time="2024-10-10T06:14:51Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authentication-1 Creating Container integration-test-device-1 Creating Container integration-test-experiment-1 Creating Container integration-test-gateway-1 Creating Container integration-test-authorization-1 Creating Container integration-test-forwarding-1 Creating Container integration-test-federation-1 Creating Container integration-test-forwarding-1 Created Container integration-test-federation-1 Created Container integration-test-gateway-1 Created Container integration-test-authorization-1 Created Container integration-test-device-1 Created Container integration-test-authentication-1 Created Container integration-test-experiment-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, forwarding-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/forwarding_service.conf to /etc/nginx/forwarding_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_backends.conf to /etc/nginx/api_backends.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_gateway.conf to /etc/nginx/api_gateway.conf gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh gateway-1 | /docker-entrypoint.sh: Configuration complete; ready for start up forwarding-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} forwarding-1 | {"level":"info","message":"Forwarding Service started successfully"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-10-10T06:15:22Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} experiment-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 | {"client_addr":"127.0.0.1:42348","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-10-10T06:15:23Z"} authorization-1 | {"client_addr":"127.0.0.1:42348","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.322108,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1728540923.3780913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1728540923.3782077} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1728540923.3782403} 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":1728540923.378275} 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":1728540923.3783033} 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":1728540923.378387,"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":1728540923.379072} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1728540923.3803189} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} 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:39480","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-10-10T06:15:23.426150895Z","id":"01J9TH2NH26FCZZ2N8JQXET3M1","name":"crosslab","updated_at":"2024-10-10T06:15:23.426150895Z"},"request_id":"a7d691af-981a-490c-af4f-21c82b47d6fa","subsystem":"openfga","timestamp":1728540923.426291} 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:39480","raw_request":{"schema_version":"1.1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J9TH2NJKWMN3QRN6GSXKPKPF"},"request_id":"eec7324f-88f9-4996-82f5-1c21838b5f94","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540923.4756145} authorization-1 | {"client_addr":"127.0.0.1:42348","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-10-10T06:15:23Z"} authorization-1 | {"client_addr":"127.0.0.1:42348","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.27385,"resp_status":204,"subsystem":"opa","time":"2024-10-10T06:15:23Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.69.0/opa_linux_amd64","latest_version":"0.69.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.69.0","subsystem":"opa","time":"2024-10-10T06:15:23Z"} device-1 | {"level":"info","message":"Device Service started successfully"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.029","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"317e9dbd3446c856746c61f525ef0874"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 20ms","method":"HEAD","requestID":"317e9dbd3446c856746c61f525ef0874","responseTime":20,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /device/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"da9cf87a633abcf09e2dc38551250028"} device-1 | {"level":"info","message":"HEAD /device/status 200 9ms","method":"HEAD","requestID":"0e46adc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +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.011","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"581e66655314eb5bf9a7ebaaa276265f"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 6ms","method":"HEAD","requestID":"581e66655314eb5bf9a7ebaaa276265f","responseTime":6,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"6b169b979f427985f3c99a4f32f63ac2"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 10ms","method":"HEAD","requestID":"0e4c7a20-86cf-11ef-8453-57a3c4958f48","responseTime":10,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"7b77165ecaf1e51a328b4018ac3cd539"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 10ms","method":"HEAD","requestID":"0e4fae70-86cf-11ef-b96a-eb66e07e664c","responseTime":10,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /forwarding/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"cfa0d2ac97470563376bff11e28c82d1"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 9ms","method":"HEAD","requestID":"0e5309d0-86cf-11ef-a631-87f051e9b6e3","responseTime":9,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"10/Oct/2024:06:15:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd7c45b0c3cd64cfd74364c24ab51ccc"} authentication-1 | {"level":"info","message":"POST /login 201 134ms","method":"POST","requestID":"bd7c45b0c3cd64cfd74364c24ab51ccc","responseTime":134,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDkzNX0.aBWt_uGklTWdorVMeHZaQzBN1fst7HlCyZfHCPfBJUo","level":"info","message":"auth send jwt","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c"} authentication-1 | {"level":"info","message":"GET /auth 200 23ms","method":"GET","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":23,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.335601,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540935,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDkzNX0.aBWt_uGklTWdorVMeHZaQzBN1fst7HlCyZfHCPfBJUo"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"242bbb2b-5edd-42c3-95c6-3a4eb2b95a50","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540935.9185033} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b179eda-6b82-43df-a549-2c6f615c1274","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540935.9356327} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2fc0a677-73f0-46e8-a380-685dc2cffb66","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540935.954714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6f24d8d-ce68-4eb4-a281-26f3fea7180a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540935.9558525} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"fcf578dc-89f7-4606-9013-e40551aedfc1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540935.963327} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c"} gateway-1 | {"time_local":"10/Oct/2024:06:15:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.293","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c"} device-1 | {"level":"info","message":"POST /devices? 201 245ms","method":"POST","requestID":"4f69afc4c6be9ea57d015c2eea84ed6c","responseTime":245,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDkzNX0.aBWt_uGklTWdorVMeHZaQzBN1fst7HlCyZfHCPfBJUo","level":"info","message":"auth send jwt","requestID":"1a69ffcba04fd0ffa57e3e8b23965158"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1a69ffcba04fd0ffa57e3e8b23965158"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.939071,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1a69ffcba04fd0ffa57e3e8b23965158","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540935,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDkzNX0.aBWt_uGklTWdorVMeHZaQzBN1fst7HlCyZfHCPfBJUo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4c39ec45-da39-44cb-8ba3-d539c6fea8a4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540936.0163445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83b51e77-995a-4a77-9ed9-110e5efe41ff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540936.0244179} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"fd4bc178-2a0e-4b50-8d04-8dde34bd3a83","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540936.042261} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2880def9-ee99-4a10-8d42-9c7aa432b4ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540936.0427341} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"79c158b5-97fc-4a9e-b958-2228d5fe0c63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540936.0548115} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1a69ffcba04fd0ffa57e3e8b23965158"} gateway-1 | {"time_local":"10/Oct/2024:06:15:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.073","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a69ffcba04fd0ffa57e3e8b23965158"} device-1 | {"level":"info","message":"POST /devices? 201 67ms","method":"POST","requestID":"1a69ffcba04fd0ffa57e3e8b23965158","responseTime":67,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5de45f19ed3b28f5605a650ea7004219","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5de45f19ed3b28f5605a650ea7004219","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"159a66e5559ec1cc012086cc76b1218f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"159a66e5559ec1cc012086cc76b1218f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.008","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5de45f19ed3b28f5605a650ea7004219"} device-1 | {"level":"info","message":"OPTIONS /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket 200 2ms","method":"OPTIONS","requestID":"5de45f19ed3b28f5605a650ea7004219","responseTime":2,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/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":"159a66e5559ec1cc012086cc76b1218f"} device-1 | {"level":"info","message":"OPTIONS /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/websocket 200 1ms","method":"OPTIONS","requestID":"159a66e5559ec1cc012086cc76b1218f","responseTime":1,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"13659f8c18b1c38d960d591038404bd1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"13659f8c18b1c38d960d591038404bd1","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"f0ea39f9db223d3e70dd9a4182296ab0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f0ea39f9db223d3e70dd9a4182296ab0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"13659f8c18b1c38d960d591038404bd1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f0ea39f9db223d3e70dd9a4182296ab0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845974,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"13659f8c18b1c38d960d591038404bd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"13659f8c18b1c38d960d591038404bd1","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82055,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f0ea39f9db223d3e70dd9a4182296ab0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f0ea39f9db223d3e70dd9a4182296ab0","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f0ea39f9db223d3e70dd9a4182296ab0"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.054","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f0ea39f9db223d3e70dd9a4182296ab0"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/websocket 200 39ms","method":"POST","requestID":"f0ea39f9db223d3e70dd9a4182296ab0","responseTime":39,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"13659f8c18b1c38d960d591038404bd1"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.147","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"13659f8c18b1c38d960d591038404bd1"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket 200 138ms","method":"POST","requestID":"13659f8c18b1c38d960d591038404bd1","responseTime":138,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a54d0c72fa6c8514265fe1276481115b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a54d0c72fa6c8514265fe1276481115b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a54d0c72fa6c8514265fe1276481115b"} device-1 | {"level":"info","message":"OPTIONS /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 1ms","method":"OPTIONS","requestID":"a54d0c72fa6c8514265fe1276481115b","responseTime":1,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28ee2bd191dc41f03ca6cafee476e6f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28ee2bd191dc41f03ca6cafee476e6f1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"28ee2bd191dc41f03ca6cafee476e6f1"} device-1 | {"level":"info","message":"OPTIONS /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 1ms","method":"OPTIONS","requestID":"28ee2bd191dc41f03ca6cafee476e6f1","responseTime":1,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"56d9981e6f5289ac29f9d2add4a9beab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"56d9981e6f5289ac29f9d2add4a9beab","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"40a334a10d04d160668c32d5a03b7261"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40a334a10d04d160668c32d5a03b7261","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"56d9981e6f5289ac29f9d2add4a9beab"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"40a334a10d04d160668c32d5a03b7261"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207925,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56d9981e6f5289ac29f9d2add4a9beab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"56d9981e6f5289ac29f9d2add4a9beab","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.789628,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"40a334a10d04d160668c32d5a03b7261","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"40a334a10d04d160668c32d5a03b7261","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"a4021972-bf27-43fb-97c9-35b9eccd6ca6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.396197} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"56d9981e6f5289ac29f9d2add4a9beab","responseTime":14,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"073d5053-6d4c-4675-8ea3-dec1ab4dcfc4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.400349} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"40a334a10d04d160668c32d5a03b7261","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0b91f8c-7019-484c-9eef-d0dec521181f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.4199088} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"40a334a10d04d160668c32d5a03b7261","responseTime":15,"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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6f2496c-9ee4-48c0-a483-0627d50fb0d3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.4246912} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"56d9981e6f5289ac29f9d2add4a9beab","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"874f7b9b-fec0-41f6-a1ae-5b2ecea3bfb7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.4329755} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"40a334a10d04d160668c32d5a03b7261","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"40a334a10d04d160668c32d5a03b7261"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.093","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40a334a10d04d160668c32d5a03b7261"} device-1 | {"level":"info","message":"PATCH /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 80ms","method":"PATCH","requestID":"40a334a10d04d160668c32d5a03b7261","responseTime":80,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"6076e1c0-b44e-416c-b9b1-38f4c0fcf342","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.4521751} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"56d9981e6f5289ac29f9d2add4a9beab","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"56d9981e6f5289ac29f9d2add4a9beab"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.108","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"56d9981e6f5289ac29f9d2add4a9beab"} device-1 | {"level":"info","message":"PATCH /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 101ms","method":"PATCH","requestID":"56d9981e6f5289ac29f9d2add4a9beab","responseTime":101,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.457638,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f80b64f4e5e3ca64ba68495f30ff15f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"a3c42ee5-b3a2-4c32-a80e-20d66872a862","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.492074} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f"} device-1 | {"level":"info","message":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 35ms","method":"GET","requestID":"6f80b64f4e5e3ca64ba68495f30ff15f","responseTime":35,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"1d3bd0122b3b922b217f74fd57178d4e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1d3bd0122b3b922b217f74fd57178d4e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d3bd0122b3b922b217f74fd57178d4e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230705,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d3bd0122b3b922b217f74fd57178d4e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1d3bd0122b3b922b217f74fd57178d4e","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"cb2b8236-520b-4cac-a705-413b6f240971","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.5420072} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"1d3bd0122b3b922b217f74fd57178d4e","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d3bd0122b3b922b217f74fd57178d4e"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d3bd0122b3b922b217f74fd57178d4e"} device-1 | {"level":"info","message":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 30ms","method":"GET","requestID":"1d3bd0122b3b922b217f74fd57178d4e","responseTime":30,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"eb63545d1db670bbc537abee4020b789"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"eb63545d1db670bbc537abee4020b789","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"eb63545d1db670bbc537abee4020b789"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.898053,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"eb63545d1db670bbc537abee4020b789","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"eb63545d1db670bbc537abee4020b789","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to run experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to book experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully booked experiment","requestID":"eb63545d1db670bbc537abee4020b789"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9249,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.796274,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"8d803314-64a5-4e80-89cc-aa4506320c20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.7793064} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"f538f050-5b7c-4c59-86aa-52bdd223ebe5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.7806325} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 23ms","method":"GET","requestID":"130b61c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 22ms","method":"GET","requestID":"130bafe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Setting up experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully locked booking for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to update booking for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully updated booking for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully set up experiment","requestID":"eb63545d1db670bbc537abee4020b789"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully running experiment","requestID":"eb63545d1db670bbc537abee4020b789"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236263,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777307,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"131b6750-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.842345,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d627d050-643d-46f9-9ed2-a321f09d4f88","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.8886228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"ee318370-e227-4d98-b600-29bd8508fd84","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.8892782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"93a6d353-8aa8-4579-bc1b-1d94a99f8e99","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.8911052} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"131b6750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"131b6750-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54c783b0-148c-4e57-963c-fb0627e7b223#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54c783b0-148c-4e57-963c-fb0627e7b223","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ed063abd-f3d9-4fc0-ae33-b85b38d7fcf9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.8988745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d88ab193-eefb-43ed-aa70-9f19bc48b769","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.8991828} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 37ms","method":"GET","requestID":"131acb10-86cf-11ef-b00e-2fb111b9dda5","responseTime":37,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"eb63545d1db670bbc537abee4020b789","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"131b6750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling 200 38ms","method":"POST","requestID":"131b6750-86cf-11ef-b00e-2fb111b9dda5","responseTime":38,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 45ms","method":"GET","requestID":"131aa400-86cf-11ef-b00e-2fb111b9dda5","responseTime":45,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1321f700-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13229340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"eb63545d1db670bbc537abee4020b789"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3110a1cc-0f14-4cb6-a8d0-10ca013ca165","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.919756} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001131,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1321f700-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","rebac_allow":false,"scope_allow":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":"1321f700-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa303471-8175-4cd7-be8b-c8beaafb4f1e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.9228015} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.113068,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"13229340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","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":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.365","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"level":"info","message":"POST /experiments? 201 335ms","method":"POST","requestID":"eb63545d1db670bbc537abee4020b789","responseTime":335,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"13229340-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1321f700-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling 200 17ms","method":"POST","requestID":"1321f700-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13229340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling 200 16ms","method":"POST","requestID":"13229340-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"a29ca3309d76646d6f0635fa44558805"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a29ca3309d76646d6f0635fa44558805","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1325a080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a29ca3309d76646d6f0635fa44558805"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721142,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a29ca3309d76646d6f0635fa44558805","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a29ca3309d76646d6f0635fa44558805","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a26c98b9-9b9c-46e2-9b06-d38c26df28bb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.9418032} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.46,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1325a080-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1325a080-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1325a080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling 200 10ms","method":"POST","requestID":"1325a080-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"315c52ef-5d66-416e-95d7-e644d2fabe41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.9476874} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a29ca3309d76646d6f0635fa44558805","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a29ca3309d76646d6f0635fa44558805"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a29ca3309d76646d6f0635fa44558805"} device-1 | {"level":"info","message":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 14ms","method":"GET","requestID":"a29ca3309d76646d6f0635fa44558805","responseTime":14,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662569,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk","level":"info","message":"auth send jwt","requestID":"af2579384954874353612d162bd40825"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af2579384954874353612d162bd40825","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af2579384954874353612d162bd40825"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648314,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.719369,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"af2579384954874353612d162bd40825","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af2579384954874353612d162bd40825","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:35.954643943Z"}]},"request_id":"c0d7569c-7da7-4c95-899b-62afae00791a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.9652817} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"419504d6-6d96-47ab-8b8e-0c8d247c2787","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.9683337} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:36.042242388Z"}]},"request_id":"f3645368-0dff-40ec-ba34-d0f2b0fece2a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540940.971709} device-1 | {"level":"info","message":"GET /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67? 200 19ms","method":"GET","requestID":"13283890-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af2579384954874353612d162bd40825","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 22ms","method":"GET","requestID":"132886b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af2579384954874353612d162bd40825"} gateway-1 | {"time_local":"10/Oct/2024:06:15:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af2579384954874353612d162bd40825"} device-1 | {"level":"info","message":"GET /devices/10a8527b-98dd-4eef-8f9d-e8f657534061? 200 18ms","method":"GET","requestID":"af2579384954874353612d162bd40825","responseTime":18,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Building connection plan","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"27e9cc89-704b-4128-b9ea-659ecbcb0cba"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cd19bf7f-a6a3-43ab-802b-0ccd069c219c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6861f82a-04d6-41ea-af03-4077033d81f4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"eb63545d1db670bbc537abee4020b789"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"eb63545d1db670bbc537abee4020b789"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.874539,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540940,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MH0.uTTv0ur3hmxpqtVR6hDADuiJHbVWBJfwAUnLocn9cLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"56db7041-5505-4cf0-b667-ef10f6d6576a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.009255} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87f37106-8169-4edc-9172-5f200b7ef60c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.0095325} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76'","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76'","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 44ms","method":"POST","requestID":"132d1a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":44,"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":"132d1a90-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"eb63545d1db670bbc537abee4020b789"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"133a12e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48fb1362-7968-4fe1-9093-e20d59c240f2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.0759118} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.571474,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"133a12e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"133a12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"133a12e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling 200 11ms","method":"POST","requestID":"133a12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"133c5cd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b44b3897-5563-4934-b0ff-4478633d997d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.091754} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.911409,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"133c5cd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"133c5cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"133c5cd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling 200 12ms","method":"POST","requestID":"133c5cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling"} device-1 | {"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8980250186678270467 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:X+AP\r\na=ice-pwd:mn6FxVImu5VVn7V2unPUq36U\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0B:47:A3:D0:D6:F8:7A:AD:4B:21:1C:DA:DB:B4:A9:D6:5C:2A:E0:8A:84:C6:FA:9C:6F:FF:46:A4:50:B0:11:E0\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8423544937513355622 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:B1dm\r\na=ice-pwd:7boYcdVrt2kr2LunhyKFwxDp\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D3:9D:FF:D7:65:0C:01:69:86:70:8B:72:F5:3D:0E:C8:7A:25:9F:D3:6E:91:38:35:42:44:96:8A:DB:8D:99:F5\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1313111541 1 udp 2113937151 f8998115-2b1c-4c9f-ae83-60fb7474f8b3.local 59705 typ host generation 0 ufrag B1dm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","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/10a8527b-98dd-4eef-8f9d-e8f657534061'"} device-1 | {"content":{"candidate":"candidate:3395884938 1 udp 1677729535 141.24.211.56 59705 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag B1dm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","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/10a8527b-98dd-4eef-8f9d-e8f657534061'"} device-1 | {"content":{"candidate":"candidate:3618110793 1 udp 2113937151 7f7cc556-7474-4ea6-91e0-fbfd4ad0d8db.local 48390 typ host generation 0 ufrag X+AP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1401591606 1 udp 1677729535 141.24.211.56 48390 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag X+AP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","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/51c7788b-9c2f-43b5-bed1-47268cc34f67'"} device-1 | {"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","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/e799ce67-a760-4a23-b57f-dc133b82fd76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","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":"d9e756de52ca6b1c30153dc3db20f49b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d9e756de52ca6b1c30153dc3db20f49b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"}}},"level":"info","message":"received a callback","requestID":"d9e756de52ca6b1c30153dc3db20f49b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"d9e756de52ca6b1c30153dc3db20f49b","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"d9e756de52ca6b1c30153dc3db20f49b"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","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/e799ce67-a760-4a23-b57f-dc133b82fd76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b041881bd9e2877fbeafd0abf522cc3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b041881bd9e2877fbeafd0abf522cc3d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"}}},"level":"info","message":"received a callback","requestID":"b041881bd9e2877fbeafd0abf522cc3d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1351e0a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe799ce67-a760-4a23-b57f-dc133b82fd76","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7fa16ea5-9f36-4bcd-b04a-78950cf0aee9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.231945} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.116599,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1351e0a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","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":"1351e0a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1351e0a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76 200 11ms","method":"GET","requestID":"1351e0a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"b041881bd9e2877fbeafd0abf522cc3d","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"b041881bd9e2877fbeafd0abf522cc3d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"135710c0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo","level":"info","message":"auth send jwt","requestID":"45971de8f8f88c3d6a056c2e94f7201a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45971de8f8f88c3d6a056c2e94f7201a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/54c783b0-148c-4e57-963c-fb0627e7b223","requestID":"45971de8f8f88c3d6a056c2e94f7201a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6d81260-15c5-4643-9759-93d5c55f2182","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.2658646} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.313508,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"135710c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"135710c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"135710c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.044691,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling 200 11ms","method":"POST","requestID":"135710c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"45971de8f8f88c3d6a056c2e94f7201a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540941,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45971de8f8f88c3d6a056c2e94f7201a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"135933a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0774e6d-7536-41bc-94c0-092109c564ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.2791045} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.284537,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"135933a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/54c783b0-148c-4e57-963c-fb0627e7b223","requestID":"45971de8f8f88c3d6a056c2e94f7201a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"135933a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/54c783b0-148c-4e57-963c-fb0627e7b223 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45971de8f8f88c3d6a056c2e94f7201a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"135933a0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"level":"info","message":"GET /experiments/54c783b0-148c-4e57-963c-fb0627e7b223 200 20ms","method":"GET","requestID":"45971de8f8f88c3d6a056c2e94f7201a","responseTime":20,"status":200,"url":"/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling 200 10ms","method":"POST","requestID":"135933a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo","level":"info","message":"auth send jwt","requestID":"41634a07c09db68fb75807b44d39e0da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"41634a07c09db68fb75807b44d39e0da","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/54c783b0-148c-4e57-963c-fb0627e7b223","requestID":"41634a07c09db68fb75807b44d39e0da"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.689837,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41634a07c09db68fb75807b44d39e0da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540941,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41634a07c09db68fb75807b44d39e0da","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Attempting to finish experiment","requestID":"41634a07c09db68fb75807b44d39e0da"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.655077,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540941,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","device":"10a8527b-98dd-4eef-8f9d-e8f657534061","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76","device":"51c7788b-9c2f-43b5-bed1-47268cc34f67","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/e799ce67-a760-4a23-b57f-dc133b82fd76' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fac077335278d1cb03f5bfe860402af0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fac077335278d1cb03f5bfe860402af0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"57d421700e3c9b211edcb00bc020ab72","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"57d421700e3c9b211edcb00bc020ab72","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"}}},"level":"info","message":"received a callback","requestID":"fac077335278d1cb03f5bfe860402af0"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"}}},"level":"info","message":"received a callback","requestID":"57d421700e3c9b211edcb00bc020ab72"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe799ce67-a760-4a23-b57f-dc133b82fd76': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe799ce67-a760-4a23-b57f-dc133b82fd76","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"089673cc-355f-4734-b2c0-2b0dca582ed0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.3376846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b1993da-9b23-42b7-a5d1-4f9bbe90a584","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.3379457} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"e799ce67-a760-4a23-b57f-dc133b82fd76","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76 204 50ms","method":"DELETE","requestID":"135dc780-86cf-11ef-b00e-2fb111b9dda5","responseTime":50,"status":204,"url":"/peerconnections/e799ce67-a760-4a23-b57f-dc133b82fd76"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"},"level":"info","message":"Successfully finished experiment","requestID":"41634a07c09db68fb75807b44d39e0da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1368c400-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a8527b-98dd-4eef-8f9d-e8f657534061","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30d4cf58-d5c4-463a-9d1c-a2ce7f99f4e7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.3828318} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.606494,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1368c400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1368c400-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1368c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling 200 14ms","method":"POST","requestID":"1368c400-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/10a8527b-98dd-4eef-8f9d-e8f657534061/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54c783b0-148c-4e57-963c-fb0627e7b223': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54c783b0-148c-4e57-963c-fb0627e7b223","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"fedc00b7-ead2-41ab-9047-76c9baddb8b0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.3944418} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"136b8320-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7f7a747-cdcc-4aef-81da-e46bdcfdb533","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.3947148} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"41634a07c09db68fb75807b44d39e0da","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51c7788b-9c2f-43b5-bed1-47268cc34f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12af0e20-33d5-48a4-9105-22fb671b1d25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.4000123} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434254,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"136b8320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"136b8320-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"136b8320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling 200 14ms","method":"POST","requestID":"136b8320-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/54c783b0-148c-4e57-963c-fb0627e7b223","requestID":"41634a07c09db68fb75807b44d39e0da"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/54c783b0-148c-4e57-963c-fb0627e7b223 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41634a07c09db68fb75807b44d39e0da"} experiment-1 | {"level":"info","message":"DELETE /experiments/54c783b0-148c-4e57-963c-fb0627e7b223 204 181ms","method":"DELETE","requestID":"41634a07c09db68fb75807b44d39e0da","responseTime":181,"status":204,"url":"/experiments/54c783b0-148c-4e57-963c-fb0627e7b223"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"fac077335278d1cb03f5bfe860402af0","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"fac077335278d1cb03f5bfe860402af0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo","level":"info","message":"auth send jwt","requestID":"b804efd2f92de4ba96563bb9289754dd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"57d421700e3c9b211edcb00bc020ab72","responseTime":144,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"57d421700e3c9b211edcb00bc020ab72"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"1.206","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"77e16922e9351e7610eaff5182f5c70b"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"1.167","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7288d6a14ee7f9ee22c10c8da326a43e"} device-1 | {"level":"info","message":"postDevices called","requestID":"b804efd2f92de4ba96563bb9289754dd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.722276,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b804efd2f92de4ba96563bb9289754dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540941,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/51c7788b-9c2f-43b5-bed1-47268cc34f67' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/10a8527b-98dd-4eef-8f9d-e8f657534061' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c190fbb8-c150-4c21-8045-c721c1a81005","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.509911} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d29a0d4a-709b-498a-83e7-3c66b5fb9706","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5158665} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ea4da294-b67a-45ca-8b08-a1ac8e205e22","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.526602} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2530d3be-35a3-4c00-8ea5-35abc186dcbe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5268292} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"4afdb52e-aaa3-44c6-93a2-3e00a26cd56e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5314112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b804efd2f92de4ba96563bb9289754dd"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b804efd2f92de4ba96563bb9289754dd"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"b804efd2f92de4ba96563bb9289754dd","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo","level":"info","message":"auth send jwt","requestID":"224d0178ff70fd6364ddbb5940b6a89b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"224d0178ff70fd6364ddbb5940b6a89b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"224d0178ff70fd6364ddbb5940b6a89b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.74833,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"224d0178ff70fd6364ddbb5940b6a89b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540941,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0MX0.XZCGiu5rWWYISk6VVUh5bkd2i3li3eNcEaRQfFY6tvo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"db1264bb-b738-4876-aea5-4d04cda1ae4f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5558023} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af0c52fc-f749-4425-859a-9ebd21ad6bde","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5602586} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"13c604f9-be3f-41ca-adbe-45298c2b29ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.569758} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0185773-b8b9-400a-9227-7871965a88a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5699668} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"dd44b552-b92b-42f9-b823-e094ce3aa0fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540941.5743747} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"224d0178ff70fd6364ddbb5940b6a89b"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"224d0178ff70fd6364ddbb5940b6a89b","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:15:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"224d0178ff70fd6364ddbb5940b6a89b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Mn0.HrrPnKVSirkCDQiwg9_W-vnis7Ym6j5sF7Z_hiwD6h4","level":"info","message":"auth send jwt","requestID":"c8a35bf29aac3f397a1d29eb488e05c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c8a35bf29aac3f397a1d29eb488e05c2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058446,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c8a35bf29aac3f397a1d29eb488e05c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540942,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Mn0.HrrPnKVSirkCDQiwg9_W-vnis7Ym6j5sF7Z_hiwD6h4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"d63907f1-518e-457e-b841-2144fc9abaf0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540942.1152885} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27ca33b4-844a-49ba-843a-88bd66fb8a74","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540942.1218941} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"20357942-870e-47a4-b225-453cf09c1cfe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540942.1448755} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c8a35bf29aac3f397a1d29eb488e05c2"} gateway-1 | {"time_local":"10/Oct/2024:06:15:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.057","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c8a35bf29aac3f397a1d29eb488e05c2"} device-1 | {"level":"info","message":"PATCH /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3 200 49ms","method":"PATCH","requestID":"c8a35bf29aac3f397a1d29eb488e05c2","responseTime":49,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Mn0.HrrPnKVSirkCDQiwg9_W-vnis7Ym6j5sF7Z_hiwD6h4","level":"info","message":"auth send jwt","requestID":"9a01e5f451d560ef9eb42a68000f59b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9a01e5f451d560ef9eb42a68000f59b4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9a01e5f451d560ef9eb42a68000f59b4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.355933,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9a01e5f451d560ef9eb42a68000f59b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540942,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Mn0.HrrPnKVSirkCDQiwg9_W-vnis7Ym6j5sF7Z_hiwD6h4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9a01e5f451d560ef9eb42a68000f59b4","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9a01e5f451d560ef9eb42a68000f59b4"} gateway-1 | {"time_local":"10/Oct/2024:06:15:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9a01e5f451d560ef9eb42a68000f59b4"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/websocket 200 25ms","method":"POST","requestID":"9a01e5f451d560ef9eb42a68000f59b4","responseTime":25,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79185b018f130d3f54dfa8734f6c548a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"79185b018f130d3f54dfa8734f6c548a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd0aed85-6952-4364-9cc5-aa9516409435/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":"79185b018f130d3f54dfa8734f6c548a"} device-1 | {"level":"info","message":"OPTIONS /devices/bd0aed85-6952-4364-9cc5-aa9516409435/websocket 200 2ms","method":"OPTIONS","requestID":"79185b018f130d3f54dfa8734f6c548a","responseTime":2,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"ff8684946c49dd5a6281121715c43382"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ff8684946c49dd5a6281121715c43382","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ff8684946c49dd5a6281121715c43382"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210225,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ff8684946c49dd5a6281121715c43382","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ff8684946c49dd5a6281121715c43382","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ff8684946c49dd5a6281121715c43382"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.035","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ff8684946c49dd5a6281121715c43382"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/websocket 200 27ms","method":"POST","requestID":"ff8684946c49dd5a6281121715c43382","responseTime":27,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"006b6a20ce65de18063c84ebfbd789c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"006b6a20ce65de18063c84ebfbd789c8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd0aed85-6952-4364-9cc5-aa9516409435? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"006b6a20ce65de18063c84ebfbd789c8"} device-1 | {"level":"info","message":"OPTIONS /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 1ms","method":"OPTIONS","requestID":"006b6a20ce65de18063c84ebfbd789c8","responseTime":1,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"092711262001f9afd50c745647e77762"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"092711262001f9afd50c745647e77762","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"092711262001f9afd50c745647e77762"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206616,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"092711262001f9afd50c745647e77762","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"092711262001f9afd50c745647e77762","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"31a61453-a2ab-4834-b5ad-a610d84116cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.6486156} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"092711262001f9afd50c745647e77762","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbc55229-c0eb-4bb2-9657-a67126d00319","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.6601782} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"092711262001f9afd50c745647e77762","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"a3037072-ca06-4332-a2bb-a471db445b06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.670478} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"092711262001f9afd50c745647e77762","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"092711262001f9afd50c745647e77762"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bd0aed85-6952-4364-9cc5-aa9516409435? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.051","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"092711262001f9afd50c745647e77762"} device-1 | {"level":"info","message":"PATCH /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 43ms","method":"PATCH","requestID":"092711262001f9afd50c745647e77762","responseTime":43,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"17ed0eb25c1893ad863ea772af103262"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"17ed0eb25c1893ad863ea772af103262","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17ed0eb25c1893ad863ea772af103262"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281196,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17ed0eb25c1893ad863ea772af103262","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"17ed0eb25c1893ad863ea772af103262","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"03d09f29-2141-4071-9857-44b8bd9017ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.7059329} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"17ed0eb25c1893ad863ea772af103262","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17ed0eb25c1893ad863ea772af103262"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17ed0eb25c1893ad863ea772af103262"} device-1 | {"level":"info","message":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 22ms","method":"GET","requestID":"17ed0eb25c1893ad863ea772af103262","responseTime":22,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"2416f649c79b1d44005afaf31ecc8cbe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2416f649c79b1d44005afaf31ecc8cbe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2416f649c79b1d44005afaf31ecc8cbe"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144465,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2416f649c79b1d44005afaf31ecc8cbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2416f649c79b1d44005afaf31ecc8cbe","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"ed626cbe-4988-45cb-9b06-14e589a660ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.7358592} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2416f649c79b1d44005afaf31ecc8cbe","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2416f649c79b1d44005afaf31ecc8cbe"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2416f649c79b1d44005afaf31ecc8cbe"} device-1 | {"level":"info","message":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? 200 21ms","method":"GET","requestID":"2416f649c79b1d44005afaf31ecc8cbe","responseTime":21,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"4be338e9c32994da8f4f310a1f669667"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4be338e9c32994da8f4f310a1f669667","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4be338e9c32994da8f4f310a1f669667"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.181589,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4be338e9c32994da8f4f310a1f669667","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4be338e9c32994da8f4f310a1f669667","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to run experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to book experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully booked experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10094,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200791,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"35e6b871-36ee-47de-89f8-7a6981fe7fa0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.8275096} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"a0992513-b1a6-4e0e-aa11-d8cb2862833a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.8294387} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 25ms","method":"GET","requestID":"14dc7840-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? 200 25ms","method":"GET","requestID":"14dced70-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Setting up experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully set up experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14eb1e40-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully running experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.554415,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165519,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"469e33bc-3022-47f5-8c68-510b8b5edac8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9194546} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.281757,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14eb1e40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"14eb1e40-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"eb188481-ea1b-473a-a766-c7fadcad3f59","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9222903} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"8e5a4516-c8b4-4c15-ad17-d2d69d4edeb9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9246855} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14eb1e40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling 200 27ms","method":"POST","requestID":"14eb1e40-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 32ms","method":"GET","requestID":"14ea8200-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? 200 33ms","method":"GET","requestID":"14ead020-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70855f06-dab5-4137-8610-247c7a62929b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70855f06-dab5-4137-8610-247c7a62929b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ea484906-1fee-4042-81f9-b0863f5c909a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.940632} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14f02750-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52633634-a8b9-446a-8c7c-692f9205ec9b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9408436} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"4be338e9c32994da8f4f310a1f669667","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14f0c390-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abc01594-de07-4373-8e5e-80dd059705eb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9486494} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.346816,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f02750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","rebac_allow":false,"scope_allow":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":"14f02750-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed880adc-1a14-444a-9a92-82b200f3b10a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9528453} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.735931,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4be338e9c32994da8f4f310a1f669667"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f0c390-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","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":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4be338e9c32994da8f4f310a1f669667"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14f0c390-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"4be338e9c32994da8f4f310a1f669667","responseTime":199,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14f02750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling 200 16ms","method":"POST","requestID":"14f02750-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14f0c390-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"bc8edb0d540d04847a8449237c2d44ed"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling 200 14ms","method":"POST","requestID":"14f0c390-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bc8edb0d540d04847a8449237c2d44ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc8edb0d540d04847a8449237c2d44ed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14f35ba0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659526,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bc8edb0d540d04847a8449237c2d44ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bc8edb0d540d04847a8449237c2d44ed","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537208,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5083cab-1f02-4d50-8963-3e55c11ef510","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9680035} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f35ba0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14f35ba0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"4fc211b2-a661-4079-b878-1b9e6610f004","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9732275} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14f35ba0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bc8edb0d540d04847a8449237c2d44ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling 200 12ms","method":"POST","requestID":"14f35ba0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc8edb0d540d04847a8449237c2d44ed"} gateway-1 | {"time_local":"10/Oct/2024:06:15:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bc8edb0d540d04847a8449237c2d44ed"} device-1 | {"level":"info","message":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 21ms","method":"GET","requestID":"bc8edb0d540d04847a8449237c2d44ed","responseTime":21,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731647,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58340","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878003,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE","level":"info","message":"auth send jwt","requestID":"d3bf2c95026394108fa4b8f5154c80c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3bf2c95026394108fa4b8f5154c80c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3bf2c95026394108fa4b8f5154c80c4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.526589722Z"}]},"request_id":"0ff26c5a-0542-4883-910c-075e0b614182","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9872582} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"125da57b-7fa9-4a74-9084-efceac945936","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9885807} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62361,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:43Z"} device-1 | {"level":"info","message":"GET /devices/bd0aed85-6952-4364-9cc5-aa9516409435? 200 15ms","method":"GET","requestID":"14f5a590-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d3bf2c95026394108fa4b8f5154c80c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d3bf2c95026394108fa4b8f5154c80c4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:41.569744183Z"}]},"request_id":"f86f2732-161f-4417-a169-cc8df4543dc6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540943.9972823} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? 200 20ms","method":"GET","requestID":"14f5cca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3bf2c95026394108fa4b8f5154c80c4","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Building connection plan","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"12baa601-6e27-4bb2-9bfc-955a07b3d07b"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"44b8619d-7b16-433a-9c7f-9332e18bfd13"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e664f40d-ab96-41f5-b22d-1c8be54ca43b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4be338e9c32994da8f4f310a1f669667"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4be338e9c32994da8f4f310a1f669667"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3bf2c95026394108fa4b8f5154c80c4"} gateway-1 | {"time_local":"10/Oct/2024:06:15:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3bf2c95026394108fa4b8f5154c80c4"} device-1 | {"level":"info","message":"GET /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3? 200 15ms","method":"GET","requestID":"d3bf2c95026394108fa4b8f5154c80c4","responseTime":15,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.091537,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540943,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0M30.K8tXFNGMzMlkRHpmYeLhSbIkMUvphkweiNt25VH5YUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"92dacd82-4e6e-4106-8db9-7684f7aed853","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540944.0175562} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5950b89-b065-4dea-b2ce-b4ba376479c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540944.01784} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03'","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03'","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} 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":"14f99d30-86cf-11ef-b00e-2fb111b9dda5","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":"14f99d30-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4be338e9c32994da8f4f310a1f669667"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15036130-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4efa5cd1-0027-41c5-a5d8-d56be066db28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540944.0724194} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.1113,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"15036130-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"15036130-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15036130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling 200 11ms","method":"POST","requestID":"15036130-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15055d00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e63966ff-f6d1-46e6-853e-4efd80d664d3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540944.0851862} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.482285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"15055d00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15055d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15055d00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling 200 11ms","method":"POST","requestID":"15055d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling"} device-1 | {"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4648228111029395872 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:BP4W\r\na=ice-pwd:KK5WWBJwIk3L0GN1Z5K/3q7C\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8A:64:D2:FE:B2:65:08:96:25:9B:E8:50:68:EC:CB:71:2F:EB:62:03:18:12:43:EB:EC:ED:23:DC:7B:5A:E7:FE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b9aae427f708d29ccc8ef6d4469e854b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b9aae427f708d29ccc8ef6d4469e854b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"}}},"level":"info","message":"received a callback","requestID":"b9aae427f708d29ccc8ef6d4469e854b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"b9aae427f708d29ccc8ef6d4469e854b","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"b9aae427f708d29ccc8ef6d4469e854b"} device-1 | {"content":{"candidate":"candidate:2491704867 1 udp 2113937151 e1f947f6-5806-450d-a073-36ea53655701.local 55761 typ host generation 0 ufrag BP4W network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:279514204 1 udp 1677729535 141.24.211.56 55761 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag BP4W network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1134867415 1 udp 33562623 141.24.210.113 61820 typ relay raddr 141.24.211.56 rport 55761 generation 0 ufrag BP4W network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"bd0aed85-6952-4364-9cc5-aa9516409435","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/bd0aed85-6952-4364-9cc5-aa9516409435'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435'"} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","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/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c71a4cf05d62ae2658a60ea3b749fca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9c71a4cf05d62ae2658a60ea3b749fca","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"}}},"level":"info","message":"received a callback","requestID":"9c71a4cf05d62ae2658a60ea3b749fca"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"164297f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff64ceda7-01dc-4ece-8057-3e4c4dcc3a03","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c147ba86-3f80-4f96-ac57-cf87472fe7e2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.168} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":5.076945,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"164297f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"164297f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"164297f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03 200 16ms","method":"GET","requestID":"164297f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 52ms","method":"POST","requestID":"9c71a4cf05d62ae2658a60ea3b749fca","responseTime":52,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c71a4cf05d62ae2658a60ea3b749fca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"164975c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0164552-f251-44d5-ab6e-713a4f626794","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.2114441} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.855019,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"164975c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","rebac_allow":false,"scope_allow":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":"164975c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"164975c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling 200 17ms","method":"POST","requestID":"164975c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"164caa10-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44","level":"info","message":"auth send jwt","requestID":"b17655e3f96853c44c2b9e99593ad920"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b17655e3f96853c44c2b9e99593ad920","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/70855f06-dab5-4137-8610-247c7a62929b","requestID":"b17655e3f96853c44c2b9e99593ad920"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab192a58-5253-4228-8920-b08433744d8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.2329319} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.255877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"164caa10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","rebac_allow":false,"scope_allow":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":"164caa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.414819,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"164caa10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling 200 16ms","method":"POST","requestID":"164caa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b17655e3f96853c44c2b9e99593ad920","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540946,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b17655e3f96853c44c2b9e99593ad920","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/70855f06-dab5-4137-8610-247c7a62929b","requestID":"b17655e3f96853c44c2b9e99593ad920"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/70855f06-dab5-4137-8610-247c7a62929b HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b17655e3f96853c44c2b9e99593ad920"} experiment-1 | {"level":"info","message":"GET /experiments/70855f06-dab5-4137-8610-247c7a62929b 200 20ms","method":"GET","requestID":"b17655e3f96853c44c2b9e99593ad920","responseTime":20,"status":200,"url":"/experiments/70855f06-dab5-4137-8610-247c7a62929b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44","level":"info","message":"auth send jwt","requestID":"29704dcbb4141a282d45767e154fec5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"29704dcbb4141a282d45767e154fec5a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/70855f06-dab5-4137-8610-247c7a62929b","requestID":"29704dcbb4141a282d45767e154fec5a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.263369,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"29704dcbb4141a282d45767e154fec5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540946,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"29704dcbb4141a282d45767e154fec5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Attempting to finish experiment","requestID":"29704dcbb4141a282d45767e154fec5a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.255251,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540946,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","device":"bd0aed85-6952-4364-9cc5-aa9516409435","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"507358c3-e0f3-466d-8d92-aecfe5d9f0b3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a28177d604bb076c5184b24c18b051ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a28177d604bb076c5184b24c18b051ce","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07b2f2aa31c4c906fd558dc8abd3ecc7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"07b2f2aa31c4c906fd558dc8abd3ecc7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"}}},"level":"info","message":"received a callback","requestID":"a28177d604bb076c5184b24c18b051ce"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff64ceda7-01dc-4ece-8057-3e4c4dcc3a03': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff64ceda7-01dc-4ece-8057-3e4c4dcc3a03","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a74e623b-b773-45fb-b28b-3ad825e83516","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3184392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e01c7b7f-1c3d-4726-bbcc-160332b84dd8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3191147} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"}}},"level":"info","message":"received a callback","requestID":"07b2f2aa31c4c906fd558dc8abd3ecc7"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"f64ceda7-01dc-4ece-8057-3e4c4dcc3a03","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03 204 58ms","method":"DELETE","requestID":"16550e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":58,"status":204,"url":"/peerconnections/f64ceda7-01dc-4ece-8057-3e4c4dcc3a03"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70855f06-dab5-4137-8610-247c7a62929b"},"level":"info","message":"Successfully finished experiment","requestID":"29704dcbb4141a282d45767e154fec5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16627c00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F507358c3-e0f3-466d-8d92-aecfe5d9f0b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4fa523e6-eb6b-45be-abf3-6621a56189ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3767807} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.592254,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"16627c00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3","object_type":"device","rebac_allow":false,"scope_allow":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":"16627c00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16627c00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling 200 17ms","method":"POST","requestID":"16627c00-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/507358c3-e0f3-466d-8d92-aecfe5d9f0b3/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70855f06-dab5-4137-8610-247c7a62929b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70855f06-dab5-4137-8610-247c7a62929b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"db9131f9-94b6-4cdd-aadd-82db8e93b1c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3875477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"909788c1-10de-4ac7-858c-562a60a18339","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3879192} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1665b050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"29704dcbb4141a282d45767e154fec5a","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd0aed85-6952-4364-9cc5-aa9516409435","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4940e6ff-2d42-4bd2-afc5-90c36f8ff94f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.3954234} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.730741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1665b050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd0aed85-6952-4364-9cc5-aa9516409435","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1665b050-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1665b050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling 200 13ms","method":"POST","requestID":"1665b050-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/bd0aed85-6952-4364-9cc5-aa9516409435/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/70855f06-dab5-4137-8610-247c7a62929b","requestID":"29704dcbb4141a282d45767e154fec5a"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/70855f06-dab5-4137-8610-247c7a62929b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.199","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29704dcbb4141a282d45767e154fec5a"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3422","request_time":"4.271","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d8fc365917cba5e9fbc7f1816a9bb71e"} experiment-1 | {"level":"info","message":"DELETE /experiments/70855f06-dab5-4137-8610-247c7a62929b 204 196ms","method":"DELETE","requestID":"29704dcbb4141a282d45767e154fec5a","responseTime":196,"status":204,"url":"/experiments/70855f06-dab5-4137-8610-247c7a62929b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"a28177d604bb076c5184b24c18b051ce","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"a28177d604bb076c5184b24c18b051ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44","level":"info","message":"auth send jwt","requestID":"c4e38aadd0cea8d09ef1b953871e1bed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"07b2f2aa31c4c906fd558dc8abd3ecc7","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"07b2f2aa31c4c906fd558dc8abd3ecc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.884","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fa4c416bc501baedfbe89289b581d1a1"} device-1 | {"level":"info","message":"postDevices called","requestID":"c4e38aadd0cea8d09ef1b953871e1bed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.123899,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c4e38aadd0cea8d09ef1b953871e1bed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540946,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","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/507358c3-e0f3-466d-8d92-aecfe5d9f0b3' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6e81b2f7-1b99-4e04-8236-2a6a8f23ffd3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.490347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","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/bd0aed85-6952-4364-9cc5-aa9516409435' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ce78b01-d52a-4042-afba-12f66458b76d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.496926} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c7ed96f1-ed8f-40a1-8ba0-b59d0cfe3b5f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5071874} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b58ec76-7dc9-4ed7-93bd-b8726ebb5943","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5074508} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"dab539ff-a434-4bc2-8770-44323d112448","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5130093} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c4e38aadd0cea8d09ef1b953871e1bed"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"c4e38aadd0cea8d09ef1b953871e1bed","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4e38aadd0cea8d09ef1b953871e1bed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44","level":"info","message":"auth send jwt","requestID":"572fe08d7cc82831644a8ecb21e11bea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"572fe08d7cc82831644a8ecb21e11bea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.902719,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"572fe08d7cc82831644a8ecb21e11bea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540946,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0Nn0.wi8A93h8owEKKZJXKp-h9GE_bJT_7sgjfBltNbVdo44"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a745412c-4f90-4871-a874-5367ef7303b9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.54085} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"956f5929-ee82-466a-bf0f-611965bc5067","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5462556} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"6e23e3ee-8cf4-45e6-a0a5-71e048163021","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5622177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c04d53af-c7c2-48cd-a9bf-8e7eee03392e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.562485} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"1dba941e-8f81-4863-a827-df6a56db8d90","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540946.5673227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"572fe08d7cc82831644a8ecb21e11bea"} gateway-1 | {"time_local":"10/Oct/2024:06:15:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"572fe08d7cc82831644a8ecb21e11bea"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"572fe08d7cc82831644a8ecb21e11bea","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0N30.dWO4KT_P0-gBnLjA2pDKlH_jvQTU6ecHfXFQkSNxnlQ","level":"info","message":"auth send jwt","requestID":"84864cdb67b965d5bbdef578413c6cf3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"84864cdb67b965d5bbdef578413c6cf3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"84864cdb67b965d5bbdef578413c6cf3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.003802,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"84864cdb67b965d5bbdef578413c6cf3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540947,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0N30.dWO4KT_P0-gBnLjA2pDKlH_jvQTU6ecHfXFQkSNxnlQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84864cdb67b965d5bbdef578413c6cf3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"74bec1a6-7613-428e-969e-05af70cca518","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540947.0581176} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"84864cdb67b965d5bbdef578413c6cf3","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98e8efae-c1a9-4198-b4b5-1b3a5bac4c14","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540947.067424} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"84864cdb67b965d5bbdef578413c6cf3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"33dd9aa5-0137-4630-9f6e-ed5156df4c64","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540947.0814168} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"84864cdb67b965d5bbdef578413c6cf3","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"84864cdb67b965d5bbdef578413c6cf3"} device-1 | {"level":"info","message":"PATCH /devices/ab34d545-1207-4928-bd26-10022139ea11 200 42ms","method":"PATCH","requestID":"84864cdb67b965d5bbdef578413c6cf3","responseTime":42,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11"} gateway-1 | {"time_local":"10/Oct/2024:06:15:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ab34d545-1207-4928-bd26-10022139ea11 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"84864cdb67b965d5bbdef578413c6cf3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0N30.dWO4KT_P0-gBnLjA2pDKlH_jvQTU6ecHfXFQkSNxnlQ","level":"info","message":"auth send jwt","requestID":"7bb5fdff919e50accf5a69d1c3222359"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7bb5fdff919e50accf5a69d1c3222359","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7bb5fdff919e50accf5a69d1c3222359"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.400071,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7bb5fdff919e50accf5a69d1c3222359","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540947,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0N30.dWO4KT_P0-gBnLjA2pDKlH_jvQTU6ecHfXFQkSNxnlQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7bb5fdff919e50accf5a69d1c3222359","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7bb5fdff919e50accf5a69d1c3222359"} gateway-1 | {"time_local":"10/Oct/2024:06:15:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7bb5fdff919e50accf5a69d1c3222359"} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/websocket 200 21ms","method":"POST","requestID":"7bb5fdff919e50accf5a69d1c3222359","responseTime":21,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef8eeb964393c204926474295ed1d5b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef8eeb964393c204926474295ed1d5b7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/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":"ef8eeb964393c204926474295ed1d5b7"} device-1 | {"level":"info","message":"OPTIONS /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/websocket 200 1ms","method":"OPTIONS","requestID":"ef8eeb964393c204926474295ed1d5b7","responseTime":1,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM","level":"info","message":"auth send jwt","requestID":"81e67494c748a45f82610af1112355dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81e67494c748a45f82610af1112355dc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"81e67494c748a45f82610af1112355dc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27331,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"81e67494c748a45f82610af1112355dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"81e67494c748a45f82610af1112355dc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"81e67494c748a45f82610af1112355dc"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/websocket 200 28ms","method":"POST","requestID":"81e67494c748a45f82610af1112355dc","responseTime":28,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"81e67494c748a45f82610af1112355dc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c0bcf1a4b6d76b2184dfd71ccea732f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c0bcf1a4b6d76b2184dfd71ccea732f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6c0bcf1a4b6d76b2184dfd71ccea732f"} device-1 | {"level":"info","message":"OPTIONS /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 1ms","method":"OPTIONS","requestID":"6c0bcf1a4b6d76b2184dfd71ccea732f","responseTime":1,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM","level":"info","message":"auth send jwt","requestID":"c5e2eb401d756c6bc31d86f82f326dd9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c5e2eb401d756c6bc31d86f82f326dd9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.402253,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c5e2eb401d756c6bc31d86f82f326dd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"0795cecf-18d1-4e5e-894f-daf662f83678","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.7194993} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e8e5537-ebcf-4ff9-8be5-e012b4ec3ced","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.729024} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"f40b446b-205e-4f3e-ae71-da2bd79fc5f1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.7415907} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c5e2eb401d756c6bc31d86f82f326dd9"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.051","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c5e2eb401d756c6bc31d86f82f326dd9"} device-1 | {"level":"info","message":"PATCH /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 43ms","method":"PATCH","requestID":"c5e2eb401d756c6bc31d86f82f326dd9","responseTime":43,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM","level":"info","message":"auth send jwt","requestID":"805c80f3ed2621f4d67c52f4d2735978"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"805c80f3ed2621f4d67c52f4d2735978","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"805c80f3ed2621f4d67c52f4d2735978"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"805c80f3ed2621f4d67c52f4d2735978","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"805c80f3ed2621f4d67c52f4d2735978","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"f7232c1f-45a1-4954-871b-3b7d9a9ad681","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.7736835} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"805c80f3ed2621f4d67c52f4d2735978","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"805c80f3ed2621f4d67c52f4d2735978"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"805c80f3ed2621f4d67c52f4d2735978"} device-1 | {"level":"info","message":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? 200 20ms","method":"GET","requestID":"805c80f3ed2621f4d67c52f4d2735978","responseTime":20,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM","level":"info","message":"auth send jwt","requestID":"509bc226357dae0a99355e72068449e3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"509bc226357dae0a99355e72068449e3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"509bc226357dae0a99355e72068449e3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32842,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"509bc226357dae0a99355e72068449e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"509bc226357dae0a99355e72068449e3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"c7b764fd-9304-4a17-86a5-4d7514f1a1f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.8032298} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"509bc226357dae0a99355e72068449e3","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"509bc226357dae0a99355e72068449e3"} device-1 | {"level":"info","message":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 21ms","method":"GET","requestID":"509bc226357dae0a99355e72068449e3","responseTime":21,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} gateway-1 | {"time_local":"10/Oct/2024:06:15:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"509bc226357dae0a99355e72068449e3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM","level":"info","message":"auth send jwt","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf1f551fd6ebb5a8bbefade61c21381e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.198421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bf1f551fd6ebb5a8bbefade61c21381e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf1f551fd6ebb5a8bbefade61c21381e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to run experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to book experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully booked experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.941939,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.48242,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"b8a093e8-89a0-4580-a692-327b88175ea5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.8848743} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"c75c0cd8-0bc1-413e-b7e1-4e3a7d4ce12d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.8936975} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? 200 24ms","method":"GET","requestID":"17e06970-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 27ms","method":"GET","requestID":"17e0b790-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Setting up experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully set up experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17eee860-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.321447,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully running experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150632,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.281254,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50a00c7b-360e-476a-a586-76929397f633","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9757068} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17eee860-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","rebac_allow":false,"scope_allow":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":"17eee860-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17eee860-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"61aaa6b1-88d8-4c2b-903c-66e2b58a240d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9829082} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/signaling 200 17ms","method":"POST","requestID":"17eee860-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"c530a1df-3731-475e-9f59-f808ef683eb4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9852393} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17f243c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db3db1d3-2271-4cc1-9195-10a0700044be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9949915} device-1 | {"level":"info","message":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? 200 35ms","method":"GET","requestID":"17ee2510-86cf-11ef-b00e-2fb111b9dda5","responseTime":35,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.670185,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:48Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe285340e-beed-4f4c-959a-57a748117d93#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe285340e-beed-4f4c-959a-57a748117d93","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"9091ccdd-7b86-4465-98c8-04cdfe508a25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9962125} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 33ms","method":"GET","requestID":"17ee9a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17f243c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","rebac_allow":false,"scope_allow":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":"17f243c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1380a25-ba46-4bc5-8b41-c25a1b50afb2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540948.9969935} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17f43f90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"bf1f551fd6ebb5a8bbefade61c21381e","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17f243c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling 200 16ms","method":"POST","requestID":"17f243c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5e64e85-21e2-447c-af60-43edc4121d4c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.0082371} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.591057,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17f43f90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","rebac_allow":false,"scope_allow":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":"17f43f90-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} gateway-1 | {"time_local":"10/Oct/2024:06:15:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.201","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17f43f90-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 196ms","method":"POST","requestID":"bf1f551fd6ebb5a8bbefade61c21381e","responseTime":196,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/signaling 200 15ms","method":"POST","requestID":"17f43f90-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17f6feb0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OX0.l93tDvAZ7lth6AFkpcQ8EcJtHAq2dBc_c2xq99deIug","level":"info","message":"auth send jwt","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1e4c7c9-0dd2-490e-9d92-6e538c6e920a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.0256648} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.128682,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17f6feb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","rebac_allow":false,"scope_allow":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":"17f6feb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263989,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0f4f3de9e13135a9df3b0e112f62a0ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540949,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OX0.l93tDvAZ7lth6AFkpcQ8EcJtHAq2dBc_c2xq99deIug"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17f6feb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling 200 15ms","method":"POST","requestID":"17f6feb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"b9eef78c-35ae-4df0-8854-5be92006fe62","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.034612} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae"} gateway-1 | {"time_local":"10/Oct/2024:06:15:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967744,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} device-1 | {"level":"info","message":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? 200 18ms","method":"GET","requestID":"0f4f3de9e13135a9df3b0e112f62a0ae","responseTime":18,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11?"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.269059,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OX0.l93tDvAZ7lth6AFkpcQ8EcJtHAq2dBc_c2xq99deIug","level":"info","message":"auth send jwt","requestID":"d2f194463cdb82daeff9f066d783fef1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.507174143Z"}]},"request_id":"877aa33a-c0c5-4b3e-bf6f-900b305ac2c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.048551} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d2f194463cdb82daeff9f066d783fef1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2f194463cdb82daeff9f066d783fef1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"e26c020e-8ac1-4c3f-8abc-61b2eb214eda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.050089} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.766924,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d2f194463cdb82daeff9f066d783fef1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540949,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OX0.l93tDvAZ7lth6AFkpcQ8EcJtHAq2dBc_c2xq99deIug"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d2f194463cdb82daeff9f066d783fef1","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/ab34d545-1207-4928-bd26-10022139ea11? 200 20ms","method":"GET","requestID":"17f9e4e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 22ms","method":"GET","requestID":"17fa0bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Building connection plan","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"0cd7baf4-89eb-4c14-9100-6981d5b98813"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"3b946547-291f-4a9a-845f-a737dd598c0f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"14a052be-e176-41f0-a1ac-59d8106e3b9a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:46.562205412Z"}]},"request_id":"2f966bbf-d418-48bf-ae9b-f4626ed31e78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.0627463} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2f194463cdb82daeff9f066d783fef1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2f194463cdb82daeff9f066d783fef1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.098809,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} gateway-1 | {"time_local":"10/Oct/2024:06:15:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d2f194463cdb82daeff9f066d783fef1"} device-1 | {"level":"info","message":"GET /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953? 200 19ms","method":"GET","requestID":"d2f194463cdb82daeff9f066d783fef1","responseTime":19,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540948,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk0OH0.JWlIL9YYvrR0G1lrYVEML-w8DTBRH_imn_Q5TEu2FSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"22813d57-f7d6-41da-889b-30f40185fabb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.0790896} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"199be90a-b2f7-47ad-99cd-9e38bff4fe1c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.0793808} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385'","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385'","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} 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":"17fddc80-86cf-11ef-b00e-2fb111b9dda5","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":"17fddc80-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bf1f551fd6ebb5a8bbefade61c21381e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18072b50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"207c7d4c-fcc7-4973-90d4-32fcf4e92645","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.1303134} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.277889,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"18072b50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"18072b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18072b50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/signaling 200 10ms","method":"POST","requestID":"18072b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18092720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f46c10a-c0fc-4723-a13e-f2bd7030f5e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540949.1438818} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.260764,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"18092720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18092720-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18092720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling 200 10ms","method":"POST","requestID":"18092720-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling"} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2600126627008911417 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:jlOF\r\na=ice-pwd:AxkXKLjKtPaFMSPsrr4I1KJG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1F:35:6B:12:49:1B:C0:0C:CF:CE:58:A7:E3:E1:B5:6E:A3:76:E9:12:7A:1C:F2:B3:EE:1F:3A:11:4A:9D:BF:9D\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3021999981 1 udp 2113937151 11784cb1-d398-4b22-b6c5-7f3f4e4919f6.local 33954 typ host generation 0 ufrag jlOF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:806184210 1 udp 1677729535 141.24.211.56 33954 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jlOF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","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/62cf20e2-9503-4ff6-89ed-a88a34692385' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb6976d2b5c89aaf7da57c3ae7b3f0e6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eb6976d2b5c89aaf7da57c3ae7b3f0e6","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"}}},"level":"info","message":"received a callback","requestID":"eb6976d2b5c89aaf7da57c3ae7b3f0e6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"eb6976d2b5c89aaf7da57c3ae7b3f0e6","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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":"eb6976d2b5c89aaf7da57c3ae7b3f0e6"} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","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/62cf20e2-9503-4ff6-89ed-a88a34692385' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01cd38e5638bd53147682aad748f50b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"01cd38e5638bd53147682aad748f50b4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"}}},"level":"info","message":"received a callback","requestID":"01cd38e5638bd53147682aad748f50b4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"19468920-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F62cf20e2-9503-4ff6-89ed-a88a34692385","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cd6bdb7-ea0d-4ec3-8d62-181daac126ac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.2254002} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.535948,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19468920-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385","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":"19468920-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"19468920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385 200 14ms","method":"GET","requestID":"19468920-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"01cd38e5638bd53147682aad748f50b4","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"01cd38e5638bd53147682aad748f50b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"194d66f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63e161b6-9389-4034-bfec-276566c13ac6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.2698052} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.069205,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"194d66f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"194d66f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"194d66f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling 200 17ms","method":"POST","requestID":"194d66f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19509b40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b517a503-2a0e-4294-a8c0-70b6f2dcce13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.2907717} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.36857,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19509b40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","rebac_allow":false,"scope_allow":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":"19509b40-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0","level":"info","message":"auth send jwt","requestID":"6756ee157c229c30f513500d746cdc74"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6756ee157c229c30f513500d746cdc74","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e285340e-beed-4f4c-959a-57a748117d93","requestID":"6756ee157c229c30f513500d746cdc74"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19509b40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.160628,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/signaling 200 23ms","method":"POST","requestID":"19509b40-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6756ee157c229c30f513500d746cdc74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540951,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6756ee157c229c30f513500d746cdc74","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e285340e-beed-4f4c-959a-57a748117d93","requestID":"6756ee157c229c30f513500d746cdc74"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e285340e-beed-4f4c-959a-57a748117d93 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6756ee157c229c30f513500d746cdc74"} experiment-1 | {"level":"info","message":"GET /experiments/e285340e-beed-4f4c-959a-57a748117d93 200 14ms","method":"GET","requestID":"6756ee157c229c30f513500d746cdc74","responseTime":14,"status":200,"url":"/experiments/e285340e-beed-4f4c-959a-57a748117d93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0","level":"info","message":"auth send jwt","requestID":"11273ad078315a5a43d7ce4683f2846b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"11273ad078315a5a43d7ce4683f2846b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e285340e-beed-4f4c-959a-57a748117d93","requestID":"11273ad078315a5a43d7ce4683f2846b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.853886,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"11273ad078315a5a43d7ce4683f2846b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540951,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11273ad078315a5a43d7ce4683f2846b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Attempting to finish experiment","requestID":"11273ad078315a5a43d7ce4683f2846b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.861483,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540951,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385","device":"39788fad-7a50-4c75-a3a3-4fb9f75c4953","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ab34d545-1207-4928-bd26-10022139ea11","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"62cf20e2-9503-4ff6-89ed-a88a34692385","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F62cf20e2-9503-4ff6-89ed-a88a34692385': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F62cf20e2-9503-4ff6-89ed-a88a34692385","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"4668bd0e-087f-4440-9215-348f7f2e9fe8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.3533463} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df047db3-e9d7-424a-bd84-cdacaae32978","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.353719} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"63b44dac2b774915aa5304279879a113","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"63b44dac2b774915aa5304279879a113","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a93abf8e3e7840eb71f269e50a23a071","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a93abf8e3e7840eb71f269e50a23a071","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"}}},"level":"info","message":"received a callback","requestID":"63b44dac2b774915aa5304279879a113"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385 204 25ms","method":"DELETE","requestID":"19586370-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":204,"url":"/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/62cf20e2-9503-4ff6-89ed-a88a34692385"}}},"level":"info","message":"received a callback","requestID":"a93abf8e3e7840eb71f269e50a23a071"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e285340e-beed-4f4c-959a-57a748117d93"},"level":"info","message":"Successfully finished experiment","requestID":"11273ad078315a5a43d7ce4683f2846b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"195f6850-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39788fad-7a50-4c75-a3a3-4fb9f75c4953","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a98f4d4e-c6e5-4f1d-b583-65e21e2bcb1f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.387043} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.724465,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"195f6850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"195f6850-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"195f6850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling 200 10ms","method":"POST","requestID":"195f6850-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/39788fad-7a50-4c75-a3a3-4fb9f75c4953/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19616420-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe285340e-beed-4f4c-959a-57a748117d93': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe285340e-beed-4f4c-959a-57a748117d93","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5ba9c7c6-5132-4c5b-81ce-d9f9c2ecf579","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.3961003} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03fb179a-01c1-44c9-818e-d870725b6d55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.396401} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"11273ad078315a5a43d7ce4683f2846b","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab34d545-1207-4928-bd26-10022139ea11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdfafb16-9ee4-4ff6-ab91-3709a1d79cb8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.3988328} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.273152,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19616420-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab34d545-1207-4928-bd26-10022139ea11","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19616420-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19616420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ab34d545-1207-4928-bd26-10022139ea11/signaling 200 9ms","method":"POST","requestID":"19616420-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/ab34d545-1207-4928-bd26-10022139ea11/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e285340e-beed-4f4c-959a-57a748117d93","requestID":"11273ad078315a5a43d7ce4683f2846b"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e285340e-beed-4f4c-959a-57a748117d93 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11273ad078315a5a43d7ce4683f2846b"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3029","request_time":"4.341","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"919f4bb5f3733bfbb9e2c35a4b7644b6"} experiment-1 | {"level":"info","message":"DELETE /experiments/e285340e-beed-4f4c-959a-57a748117d93 204 137ms","method":"DELETE","requestID":"11273ad078315a5a43d7ce4683f2846b","responseTime":137,"status":204,"url":"/experiments/e285340e-beed-4f4c-959a-57a748117d93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0","level":"info","message":"auth send jwt","requestID":"01c710ca2582e67e57a23c0a109ad003"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01c710ca2582e67e57a23c0a109ad003","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"63b44dac2b774915aa5304279879a113","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"63b44dac2b774915aa5304279879a113"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"a93abf8e3e7840eb71f269e50a23a071","responseTime":106,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"01c710ca2582e67e57a23c0a109ad003"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"a93abf8e3e7840eb71f269e50a23a071"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.815","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9f68820a14585a8523d1429e9cc80bab"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.988838,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"01c710ca2582e67e57a23c0a109ad003","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540951,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","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/ab34d545-1207-4928-bd26-10022139ea11' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"32f79570-cd7f-4ddc-ad15-0d7a1aecb91e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.4904609} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","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/39788fad-7a50-4c75-a3a3-4fb9f75c4953' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27a1ae4d-dfae-45db-aefb-a18a296de43c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.4972918} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5eb18394-49a2-466e-9e04-0c8d6c61b88b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.506766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f11c8ee4-6a60-4806-b29e-249819149ac9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.5069687} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"4b866e1f-38a4-4e13-8dec-03b7e111e6e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.5114746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"01c710ca2582e67e57a23c0a109ad003"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01c710ca2582e67e57a23c0a109ad003"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"01c710ca2582e67e57a23c0a109ad003","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0","level":"info","message":"auth send jwt","requestID":"dd22f4075d60ef26290a01fe9eb6abbd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dd22f4075d60ef26290a01fe9eb6abbd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710248,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"dd22f4075d60ef26290a01fe9eb6abbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540951,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1MX0.pbHI6A2UH1SJFYYduGcBQgMU9TpdX5ef2QAYeFCEmA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"11682fea-d0c1-41b8-9e26-942abcc9b267","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.5352392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93e65723-a9e4-4691-9137-e1930dfd876f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.540178} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4bf83255-bbf9-4f94-9a01-d4cd6e772c2c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.5569265} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d097471-d810-4828-a241-5af7a6d721f8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.557236} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"d35b0ff7-e809-43bb-8f53-1ebe5bdb7dcd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540951.5615373} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dd22f4075d60ef26290a01fe9eb6abbd"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"dd22f4075d60ef26290a01fe9eb6abbd","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:15:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd22f4075d60ef26290a01fe9eb6abbd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"4a41189f781e7ca43d9b77c32c566fb4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a41189f781e7ca43d9b77c32c566fb4","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"4c13e4a4330f92167f8231a911ab0c27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4c13e4a4330f92167f8231a911ab0c27","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a41189f781e7ca43d9b77c32c566fb4"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4c13e4a4330f92167f8231a911ab0c27"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94189,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a41189f781e7ca43d9b77c32c566fb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a41189f781e7ca43d9b77c32c566fb4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615572,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4c13e4a4330f92167f8231a911ab0c27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c13e4a4330f92167f8231a911ab0c27","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"2532806a-dc27-4e7d-99e4-5aa7f099d30e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.040162} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a41189f781e7ca43d9b77c32c566fb4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"6fdff14a-a8b4-4d3c-9d2b-0308a57a92ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.0408187} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c13e4a4330f92167f8231a911ab0c27","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0b4164b-ba7e-4564-9916-cc02aba01b20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.0453262} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4a41189f781e7ca43d9b77c32c566fb4","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c3c46b2-4117-4c4a-a2b0-ad9e2e8aed34","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.049027} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4c13e4a4330f92167f8231a911ab0c27","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"7fc7e9bb-ea28-4689-9c08-374316874401","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.0514073} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c13e4a4330f92167f8231a911ab0c27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4c13e4a4330f92167f8231a911ab0c27"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4c13e4a4330f92167f8231a911ab0c27"} device-1 | {"level":"info","message":"PATCH /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7 200 24ms","method":"PATCH","requestID":"4c13e4a4330f92167f8231a911ab0c27","responseTime":24,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"1282ad5d49d5eda300329605561d57fa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1282ad5d49d5eda300329605561d57fa","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"cf227500-8b88-405d-af10-bd69b5edcc9c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.0598783} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1282ad5d49d5eda300329605561d57fa"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a41189f781e7ca43d9b77c32c566fb4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a41189f781e7ca43d9b77c32c566fb4"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cfe19273-95c5-4665-9dc4-911398fefffa HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4a41189f781e7ca43d9b77c32c566fb4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} device-1 | {"level":"info","message":"PATCH /devices/cfe19273-95c5-4665-9dc4-911398fefffa 200 35ms","method":"PATCH","requestID":"4a41189f781e7ca43d9b77c32c566fb4","responseTime":35,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706666,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1282ad5d49d5eda300329605561d57fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1282ad5d49d5eda300329605561d57fa","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706379,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e1d8deaa31dfae0f8fe9e52686b3892","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1282ad5d49d5eda300329605561d57fa"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1282ad5d49d5eda300329605561d57fa"} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/websocket 200 24ms","method":"POST","requestID":"1282ad5d49d5eda300329605561d57fa","responseTime":24,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/websocket 200 24ms","method":"POST","requestID":"1e1d8deaa31dfae0f8fe9e52686b3892","responseTime":24,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"9b4ab812ee088a8aee501ba390d7033b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b4ab812ee088a8aee501ba390d7033b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b4ab812ee088a8aee501ba390d7033b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673759,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9b4ab812ee088a8aee501ba390d7033b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b4ab812ee088a8aee501ba390d7033b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"912dfdee-208a-46aa-a10a-c97be63161bd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.131735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b4ab812ee088a8aee501ba390d7033b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b4ab812ee088a8aee501ba390d7033b"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b4ab812ee088a8aee501ba390d7033b"} device-1 | {"level":"info","message":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? 200 16ms","method":"GET","requestID":"9b4ab812ee088a8aee501ba390d7033b","responseTime":16,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"631782c24f958784459c2d2a2e73c197"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"631782c24f958784459c2d2a2e73c197","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"631782c24f958784459c2d2a2e73c197"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094468,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"631782c24f958784459c2d2a2e73c197","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"631782c24f958784459c2d2a2e73c197","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"85d450f7-fdc8-4ff7-8e8b-8c8861047261","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.1543891} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"631782c24f958784459c2d2a2e73c197","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"631782c24f958784459c2d2a2e73c197"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"631782c24f958784459c2d2a2e73c197"} device-1 | {"level":"info","message":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? 200 18ms","method":"GET","requestID":"631782c24f958784459c2d2a2e73c197","responseTime":18,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"7b41767e2d7447d77fa43139fa13752d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b41767e2d7447d77fa43139fa13752d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7b41767e2d7447d77fa43139fa13752d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.143264,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7b41767e2d7447d77fa43139fa13752d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7b41767e2d7447d77fa43139fa13752d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to run experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to book experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully booked experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976788,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193835,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"41f48112-31ec-431f-ac61-b4b586189907","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2177224} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"304c3feb-ed10-425b-8f02-d1b761e43187","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2190182} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? 200 18ms","method":"GET","requestID":"19dd71f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? 200 18ms","method":"GET","requestID":"19dd9900-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Setting up experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully set up experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully running experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19e70ee0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979718,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813275,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"1c97e40d-c59c-4492-8913-956831d0b711","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2806976} authorization-1 | {"client_addr":"127.0.0.1:40922","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"8a9da7b0-3184-45e8-8c12-27f36377fd1b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2823408} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85e17102-80df-488c-9582-257d0fe7abaa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2827072} authorization-1 | {"client_addr":"127.0.0.1:40922","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.740559,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19e70ee0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","rebac_allow":false,"scope_allow":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":"19e70ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? 200 23ms","method":"GET","requestID":"19e672a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? 200 22ms","method":"GET","requestID":"19e6c0c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19e70ee0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4558119f-3e65-4d7e-9c3a-8d2ffceae091#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4558119f-3e65-4d7e-9c3a-8d2ffceae091","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7a552a66-2c87-4093-8af4-0ee3e1a5517e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2913215} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling 200 22ms","method":"POST","requestID":"19e70ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93462190-b742-43e6-b105-f481422a3d78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.291603} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19ea9150-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"7b41767e2d7447d77fa43139fa13752d","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19eadf70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"382b52c7-7256-4c6e-a3ed-d70f6240ca65","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.2981558} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.527727,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19ea9150-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19ea9150-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317645,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6fde6b5-810b-4d6b-98ea-d34497e79756","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.300102} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19eadf70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","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/4558119f-3e65-4d7e-9c3a-8d2ffceae091","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7b41767e2d7447d77fa43139fa13752d"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19eadf70-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 132ms","method":"POST","requestID":"7b41767e2d7447d77fa43139fa13752d","responseTime":132,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19ea9150-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling 200 11ms","method":"POST","requestID":"19ea9150-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19eadf70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling 200 11ms","method":"POST","requestID":"19eadf70-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19ecb430-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"68feeac880aebb1c682ed1560bab955a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"68feeac880aebb1c682ed1560bab955a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"68feeac880aebb1c682ed1560bab955a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d71729fc-2605-48a4-92d1-8f1e30c23c05","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.3115237} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.103431,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728388,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19ecb430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19ecb430-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"68feeac880aebb1c682ed1560bab955a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68feeac880aebb1c682ed1560bab955a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19ecb430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling 200 10ms","method":"POST","requestID":"19ecb430-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"21caea69-b806-41f4-abc0-7789a52684a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.3174071} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"68feeac880aebb1c682ed1560bab955a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"68feeac880aebb1c682ed1560bab955a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363872,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68feeac880aebb1c682ed1560bab955a"} device-1 | {"level":"info","message":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? 200 15ms","method":"GET","requestID":"68feeac880aebb1c682ed1560bab955a","responseTime":15,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53232","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124296,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ","level":"info","message":"auth send jwt","requestID":"1c302ceeb393ab6276ffd760aba2ce91"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.506754516Z"}]},"request_id":"b15555a0-1dbd-4da4-84ee-6c2ec117083d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.3286743} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1c302ceeb393ab6276ffd760aba2ce91","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c302ceeb393ab6276ffd760aba2ce91"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"56ba4a89-a6f7-43b8-b429-31b0902b6fad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.3296888} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71403,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1c302ceeb393ab6276ffd760aba2ce91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1c302ceeb393ab6276ffd760aba2ce91","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7? 200 18ms","method":"GET","requestID":"19eeb000-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? 200 18ms","method":"GET","requestID":"19eed710-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:51.556910981Z"}]},"request_id":"3075f119-01c3-4ebf-83e8-8744905d6752","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.339449} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Building connection plan","requestID":"7b41767e2d7447d77fa43139fa13752d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"da0bec14-f3cd-476a-a0ed-5e526cfa55aa"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d08b5138-1721-4ce3-938c-34d5179a0588"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2c0cba17-7399-431e-bf4d-5f53179ec2af"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7b41767e2d7447d77fa43139fa13752d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c302ceeb393ab6276ffd760aba2ce91","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7b41767e2d7447d77fa43139fa13752d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c302ceeb393ab6276ffd760aba2ce91"} gateway-1 | {"time_local":"10/Oct/2024:06:15:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c302ceeb393ab6276ffd760aba2ce91"} device-1 | {"level":"info","message":"GET /devices/cfe19273-95c5-4665-9dc4-911398fefffa? 200 16ms","method":"GET","requestID":"1c302ceeb393ab6276ffd760aba2ce91","responseTime":16,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.964734,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540952,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Mn0.zC_9dUVP1-fzMnHoALr72Hbc76k5Z4Y5s7_NenCzvMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"129d5826-afed-41b7-847c-361f7b5562d5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.357594} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ef9ca82-fe0d-46a7-b56a-b388e75b5f41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.358008} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69'","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69'","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} 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":"19f20b60-86cf-11ef-b00e-2fb111b9dda5","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":"19f20b60-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7b41767e2d7447d77fa43139fa13752d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19fba850-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05b8821d-d5ad-446e-abd7-5ccfd0c92cfc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.4106479} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.21504,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19fba850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19fba850-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19fba850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling 200 10ms","method":"POST","requestID":"19fba850-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19fd7d10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"115571ea-da75-46fe-8823-c6a6f9e3a267","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540952.4224489} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.137689,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19fd7d10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19fd7d10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19fd7d10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling 200 10ms","method":"POST","requestID":"19fd7d10-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling"} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d89abd44b0c428a9fa3603ba4e7d6b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8d89abd44b0c428a9fa3603ba4e7d6b7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"}}},"level":"info","message":"received a callback","requestID":"8d89abd44b0c428a9fa3603ba4e7d6b7"} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"8d89abd44b0c428a9fa3603ba4e7d6b7","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"8d89abd44b0c428a9fa3603ba4e7d6b7"} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","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/1fd3e8ae-7224-4359-b779-581af9eeda69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23b4765da377acd548340997287f28ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"23b4765da377acd548340997287f28ec","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"}}},"level":"info","message":"received a callback","requestID":"23b4765da377acd548340997287f28ec"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1b39a690-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fd3e8ae-7224-4359-b779-581af9eeda69","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddc1c272-67ad-4152-a91c-a13e3bf73298","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.4976697} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.408227,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b39a690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69","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":"1b39a690-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1b39a690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69 200 16ms","method":"GET","requestID":"1b39a690-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"23b4765da377acd548340997287f28ec","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"23b4765da377acd548340997287f28ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b403640-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9066a47-4a6f-45ad-9390-bcff621c944b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.540388} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.757712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b403640-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","rebac_allow":false,"scope_allow":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":"1b403640-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b403640-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling 200 16ms","method":"POST","requestID":"1b403640-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b431c70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4c44950-6bcd-4e4b-8bf7-7ba9c28384bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.5593224} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.336663,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b431c70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","rebac_allow":false,"scope_allow":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":"1b431c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b431c70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling 200 16ms","method":"POST","requestID":"1b431c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw","level":"info","message":"auth send jwt","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.04642,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540954,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122"} experiment-1 | {"level":"info","message":"GET /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091 200 17ms","method":"GET","requestID":"b0e9318eb1d1b15d3ae3a1a1a1541122","responseTime":17,"status":200,"url":"/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw","level":"info","message":"auth send jwt","requestID":"13ef020b8490fd18748d4bb4a0c15715"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"13ef020b8490fd18748d4bb4a0c15715","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","requestID":"13ef020b8490fd18748d4bb4a0c15715"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.311204,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"13ef020b8490fd18748d4bb4a0c15715","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540954,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13ef020b8490fd18748d4bb4a0c15715","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Attempting to finish experiment","requestID":"13ef020b8490fd18748d4bb4a0c15715"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.353772,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540954,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1495f0a4-eebb-4e12-a5a2-d548797bcdd7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cfe19273-95c5-4665-9dc4-911398fefffa","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1987b185-f014-40de-a2a9-d2c938e0c947","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.6490166} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3183c6a61c8e8ba38caa446163918de3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fd3e8ae-7224-4359-b779-581af9eeda69': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fd3e8ae-7224-4359-b779-581af9eeda69","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a1f6a095-9c06-4c60-922c-545957919bcf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.6495256} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3183c6a61c8e8ba38caa446163918de3","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"10f66f0bfe58348eeb21d94c5312308e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"10f66f0bfe58348eeb21d94c5312308e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"}}},"level":"info","message":"received a callback","requestID":"3183c6a61c8e8ba38caa446163918de3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"}}},"level":"info","message":"received a callback","requestID":"10f66f0bfe58348eeb21d94c5312308e"} device-1 | {"data":{"peerconnection":"1fd3e8ae-7224-4359-b779-581af9eeda69","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69 204 59ms","method":"DELETE","requestID":"1b4ce070-86cf-11ef-b00e-2fb111b9dda5","responseTime":59,"status":204,"url":"/peerconnections/1fd3e8ae-7224-4359-b779-581af9eeda69"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"},"level":"info","message":"Successfully finished experiment","requestID":"13ef020b8490fd18748d4bb4a0c15715"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b59b1b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcfe19273-95c5-4665-9dc4-911398fefffa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a1f46a7-37a8-40b4-82d7-0f7650d5e49b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.7065618} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.676159,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b59b1b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cfe19273-95c5-4665-9dc4-911398fefffa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b59b1b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b59b1b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling 200 14ms","method":"POST","requestID":"1b59b1b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/cfe19273-95c5-4665-9dc4-911398fefffa/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4558119f-3e65-4d7e-9c3a-8d2ffceae091': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4558119f-3e65-4d7e-9c3a-8d2ffceae091","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"b2f8b4e6-7c8a-4523-bd2f-5292ab7a852b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.7157326} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9418df2-041a-464e-90f0-040d485a03aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.7162185} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b5c49c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"13ef020b8490fd18748d4bb4a0c15715","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1495f0a4-eebb-4e12-a5a2-d548797bcdd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3aec8692-603e-4ef0-9ddd-15f334ae762c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.7225876} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.565061,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b5c49c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b5c49c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b5c49c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling 200 12ms","method":"POST","requestID":"1b5c49c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/1495f0a4-eebb-4e12-a5a2-d548797bcdd7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091","requestID":"13ef020b8490fd18748d4bb4a0c15715"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13ef020b8490fd18748d4bb4a0c15715"} experiment-1 | {"level":"info","message":"DELETE /experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091 204 184ms","method":"DELETE","requestID":"13ef020b8490fd18748d4bb4a0c15715","responseTime":184,"status":204,"url":"/experiments/4558119f-3e65-4d7e-9c3a-8d2ffceae091"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.696","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a7b0a33db7513392901a8e6ae1b11bf8"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.684","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e6688541b52886c0c8d6c8dbbbdb5cc7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"3183c6a61c8e8ba38caa446163918de3","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"3183c6a61c8e8ba38caa446163918de3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"10f66f0bfe58348eeb21d94c5312308e","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"10f66f0bfe58348eeb21d94c5312308e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw","level":"info","message":"auth send jwt","requestID":"dea07ae30c60bc2c1fe06e5c41384949"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dea07ae30c60bc2c1fe06e5c41384949","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/cfe19273-95c5-4665-9dc4-911398fefffa' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"dea07ae30c60bc2c1fe06e5c41384949"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.980084,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"dea07ae30c60bc2c1fe06e5c41384949","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540954,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","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/1495f0a4-eebb-4e12-a5a2-d548797bcdd7' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b4d51bdb-80a6-40fe-a26b-e644295ff28d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8206959} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f956495b-f22a-4585-82b7-77a605afeaff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8290415} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1efe8178-3942-4ce5-b2e9-7142c832167b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.84156} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25865277-9f57-4681-845b-dd8f82c36810","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8418343} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"806daaf5-7455-4417-9a3c-acb46fa543c0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8474498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dea07ae30c60bc2c1fe06e5c41384949"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dea07ae30c60bc2c1fe06e5c41384949"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"dea07ae30c60bc2c1fe06e5c41384949","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw","level":"info","message":"auth send jwt","requestID":"e254cd0279e6ee7275b4c544692a79ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e254cd0279e6ee7275b4c544692a79ed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.887753,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e254cd0279e6ee7275b4c544692a79ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540954,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1NH0.mg86Br9QVdQsiqohS03UO_AiSCU8CQM56U_pSP-y_uw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ba7ec11-c2f9-4aa3-8ccf-a9c4f617550f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8767152} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1b25b9e-eab3-4b2f-89b8-08905e5b1d28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8821838} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"78549f29-16ee-47e4-9ed9-65290fb486c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8988955} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f79e224a-3c44-47f3-9e1c-7d9cc4624da3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.8991566} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"a4c0bd60-5b76-45fe-aa01-2be3b7344c79","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540954.9036863} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e254cd0279e6ee7275b4c544692a79ed"} gateway-1 | {"time_local":"10/Oct/2024:06:15:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e254cd0279e6ee7275b4c544692a79ed"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"e254cd0279e6ee7275b4c544692a79ed","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"069058be212002aaf3ea239e3a1e2109","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"069058be212002aaf3ea239e3a1e2109","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/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":"069058be212002aaf3ea239e3a1e2109"} device-1 | {"level":"info","message":"OPTIONS /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/websocket 200 1ms","method":"OPTIONS","requestID":"069058be212002aaf3ea239e3a1e2109","responseTime":1,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8995f1a81edf8b08877f3c13f00053dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8995f1a81edf8b08877f3c13f00053dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/603396af-a7cf-49a7-b131-f84d889e21b4/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":"8995f1a81edf8b08877f3c13f00053dc"} device-1 | {"level":"info","message":"OPTIONS /devices/603396af-a7cf-49a7-b131-f84d889e21b4/websocket 200 1ms","method":"OPTIONS","requestID":"8995f1a81edf8b08877f3c13f00053dc","responseTime":1,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok","level":"info","message":"auth send jwt","requestID":"7ff2826121e556cf3c9ad2da2d255c48"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"7ff2826121e556cf3c9ad2da2d255c48","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7ff2826121e556cf3c9ad2da2d255c48"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:56Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok","level":"info","message":"auth send jwt","requestID":"f3bdfa297a41ef2d3ea02635a9097125"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7ff2826121e556cf3c9ad2da2d255c48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540956,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f3bdfa297a41ef2d3ea02635a9097125","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ff2826121e556cf3c9ad2da2d255c48","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f3bdfa297a41ef2d3ea02635a9097125"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.357773,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f3bdfa297a41ef2d3ea02635a9097125","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540956,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3bdfa297a41ef2d3ea02635a9097125","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7ff2826121e556cf3c9ad2da2d255c48"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/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":"7ff2826121e556cf3c9ad2da2d255c48"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/websocket 200 30ms","method":"POST","requestID":"7ff2826121e556cf3c9ad2da2d255c48","responseTime":30,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f3bdfa297a41ef2d3ea02635a9097125"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f3bdfa297a41ef2d3ea02635a9097125"} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/websocket 200 29ms","method":"POST","requestID":"f3bdfa297a41ef2d3ea02635a9097125","responseTime":29,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d35981a1d8f30af4fa10067817455994","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d35981a1d8f30af4fa10067817455994","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d35981a1d8f30af4fa10067817455994"} device-1 | {"level":"info","message":"OPTIONS /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 1ms","method":"OPTIONS","requestID":"d35981a1d8f30af4fa10067817455994","responseTime":1,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e5ef769f810912043e0e0961ea15ff5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3e5ef769f810912043e0e0961ea15ff5","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok","level":"info","message":"auth send jwt","requestID":"774af9b49c6ca54d9b1fb57f6240393e"} gateway-1 | {"time_local":"10/Oct/2024:06:15:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/603396af-a7cf-49a7-b131-f84d889e21b4? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.007","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e5ef769f810912043e0e0961ea15ff5"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"774af9b49c6ca54d9b1fb57f6240393e","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 1ms","method":"OPTIONS","requestID":"3e5ef769f810912043e0e0961ea15ff5","responseTime":1,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"774af9b49c6ca54d9b1fb57f6240393e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:56Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok","level":"info","message":"auth send jwt","requestID":"e653ee185187c0c4024cc810046781c2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.511212,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:56Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e653ee185187c0c4024cc810046781c2","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"774af9b49c6ca54d9b1fb57f6240393e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540956,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"774af9b49c6ca54d9b1fb57f6240393e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e653ee185187c0c4024cc810046781c2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.035343,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e653ee185187c0c4024cc810046781c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540956,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1Nn0.RXybXq-q_Ejs8UMrgNm6GUxlPgD4fuTDzTTFndM4Eok"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e653ee185187c0c4024cc810046781c2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"6fd121e8-4a3b-40ca-84fe-a07feb15bb55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540956.9891226} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"774af9b49c6ca54d9b1fb57f6240393e","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"51ddeef1-4cdc-4640-9a25-4ebc6f33936e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540956.9938593} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e653ee185187c0c4024cc810046781c2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed14a138-d03d-4547-af86-fe25a0fe2ff4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540956.997738} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"774af9b49c6ca54d9b1fb57f6240393e","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d4e80c9-6ce8-47ca-a7de-8200a27ea08c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.0008512} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e653ee185187c0c4024cc810046781c2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"c9bebcc6-b7c2-4d37-be79-8115993c351c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.0046132} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e653ee185187c0c4024cc810046781c2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e653ee185187c0c4024cc810046781c2"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/603396af-a7cf-49a7-b131-f84d889e21b4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.035","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e653ee185187c0c4024cc810046781c2"} device-1 | {"level":"info","message":"PATCH /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 28ms","method":"PATCH","requestID":"e653ee185187c0c4024cc810046781c2","responseTime":28,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"c47b3366-a4d3-40f6-b41e-f4a096882649","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.016258} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"774af9b49c6ca54d9b1fb57f6240393e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"774af9b49c6ca54d9b1fb57f6240393e"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.057","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"774af9b49c6ca54d9b1fb57f6240393e"} device-1 | {"level":"info","message":"PATCH /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 48ms","method":"PATCH","requestID":"774af9b49c6ca54d9b1fb57f6240393e","responseTime":48,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"41e1b05c2c98746c399e258134e80095"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41e1b05c2c98746c399e258134e80095","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41e1b05c2c98746c399e258134e80095"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991245,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41e1b05c2c98746c399e258134e80095","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41e1b05c2c98746c399e258134e80095","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"5098df09-a9d8-4556-ba9d-4bccdbdea2c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.0398648} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"41e1b05c2c98746c399e258134e80095","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41e1b05c2c98746c399e258134e80095"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41e1b05c2c98746c399e258134e80095"} device-1 | {"level":"info","message":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 15ms","method":"GET","requestID":"41e1b05c2c98746c399e258134e80095","responseTime":15,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"9407f69477d80aa5ee441c2f507d33b9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9407f69477d80aa5ee441c2f507d33b9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9407f69477d80aa5ee441c2f507d33b9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20237,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9407f69477d80aa5ee441c2f507d33b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9407f69477d80aa5ee441c2f507d33b9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"df8cbf83-dc3e-41ba-b6de-bce34e77d211","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.064302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9407f69477d80aa5ee441c2f507d33b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9407f69477d80aa5ee441c2f507d33b9"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9407f69477d80aa5ee441c2f507d33b9"} device-1 | {"level":"info","message":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 15ms","method":"GET","requestID":"9407f69477d80aa5ee441c2f507d33b9","responseTime":15,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fbe0050cd9d354a39dcfdaa8acef6501","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.125154,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fbe0050cd9d354a39dcfdaa8acef6501","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbe0050cd9d354a39dcfdaa8acef6501","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to run experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to book experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully booked experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.078076,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319229,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"72f70ddb-e7b8-4912-b5aa-1253387c3e5d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.1379907} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"94bfb770-fbd3-4fe5-aced-5af497ef7d4c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.1436045} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 21ms","method":"GET","requestID":"1ccbb840-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 23ms","method":"GET","requestID":"1ccc2d70-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Setting up experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully set up experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cd94cd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.798782,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully running experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814724,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c78e03b1-729b-4ec5-9629-c6f3015c0542","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2218008} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"93204a05-0072-489d-b106-62e87c6171dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2229378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"9af0eabe-489b-4e04-b352-408fd8d68ed6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2251244} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.614352,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cd94cd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","rebac_allow":false,"scope_allow":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":"1cd94cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cd94cd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling 200 23ms","method":"POST","requestID":"1cd94cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 30ms","method":"GET","requestID":"1cd88980-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f761241-5a53-4eca-824a-8a93f5f6cc7b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f761241-5a53-4eca-824a-8a93f5f6cc7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e5e146ae-f6f7-4e02-95ca-f62515bbba47","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2393484} device-1 | {"level":"info","message":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 30ms","method":"GET","requestID":"1cd8d7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2923041-851e-4af2-8d12-6dbed33b2522","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2396913} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cdd6b80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"fbe0050cd9d354a39dcfdaa8acef6501","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cdde0b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a83c3a4a-4ae3-4654-94b0-13c3eaaaeb07","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2464583} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.56283,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cdd6b80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","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/7f761241-5a53-4eca-824a-8a93f5f6cc7b","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1cdd6b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"fbe0050cd9d354a39dcfdaa8acef6501","responseTime":172,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea6876cb-3eb3-4b37-bb3f-e6ee644f9372","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2504804} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.559581,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cdde0b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","rebac_allow":false,"scope_allow":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":"1cdde0b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cdd6b80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling 200 13ms","method":"POST","requestID":"1cdd6b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"da1f6906eccd25dbbab79f41cbd83d00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da1f6906eccd25dbbab79f41cbd83d00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"da1f6906eccd25dbbab79f41cbd83d00"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cdde0b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling 200 17ms","method":"POST","requestID":"1cdde0b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005711,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"da1f6906eccd25dbbab79f41cbd83d00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da1f6906eccd25dbbab79f41cbd83d00","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ce0c6e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"f74ca770-c48d-4e82-990a-8843b79d2648","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2670476} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b48fd7e8-6daf-464c-9cca-ba3b7fbd24b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2672346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da1f6906eccd25dbbab79f41cbd83d00","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.337246,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ce0c6e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ce0c6e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"da1f6906eccd25dbbab79f41cbd83d00"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da1f6906eccd25dbbab79f41cbd83d00"} device-1 | {"level":"info","message":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 17ms","method":"GET","requestID":"da1f6906eccd25dbbab79f41cbd83d00","responseTime":17,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ce0c6e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling 200 12ms","method":"POST","requestID":"1ce0c6e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"242d5fec60916c07649f587f81b4ced4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"242d5fec60916c07649f587f81b4ced4","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"242d5fec60916c07649f587f81b4ced4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71714,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84338,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.570614,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"242d5fec60916c07649f587f81b4ced4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"242d5fec60916c07649f587f81b4ced4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.841540600Z"}]},"request_id":"4d762017-290a-4dae-a4fe-d1d2366f2928","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.286665} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"33990255-6403-4577-8a8e-6016072c3c7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.288616} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:54.898881823Z"}]},"request_id":"4491d873-0b35-43a8-bfb1-07851676391e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.2910428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"242d5fec60916c07649f587f81b4ced4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/603396af-a7cf-49a7-b131-f84d889e21b4? 200 18ms","method":"GET","requestID":"1ce310d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 19ms","method":"GET","requestID":"1ce337e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"242d5fec60916c07649f587f81b4ced4"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"242d5fec60916c07649f587f81b4ced4"} device-1 | {"level":"info","message":"GET /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3? 200 18ms","method":"GET","requestID":"242d5fec60916c07649f587f81b4ced4","responseTime":18,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Building connection plan","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"4119306e-592b-4e00-8187-28b95261325d"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"37d950c4-a3ed-4d91-9299-2108ae78b37e"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"455b13df-2287-456a-8eea-84c6c23850b1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1ce9c790-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1ce9c790-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 15ms","method":"POST","requestID":"1ce9c790-86cf-11ef-a631-87f051e9b6e3","responseTime":15,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494?id=b8db53c0-78f9-4820-8a46-93943da43582","ws://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494?id=7791bc09-21dc-455d-a9e5-bad9b9924fd4"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.231115,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8980aa10-dbff-458b-9aef-d85806a1301c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.3594363} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b79fb56-96e1-459a-ac52-22e75b703e25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.3596125} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a'","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a'","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 38ms","method":"POST","requestID":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":38,"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":"1cecd4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1728278c040421791334eba6c54df92","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c1728278c040421791334eba6c54df92","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1cf6e6f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7791bc09-21dc-455d-a9e5-bad9b9924fd4\" in room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\"","requestID":"1cf6e6f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1cf6e6f0-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"}}},"level":"info","message":"received a callback","requestID":"c1728278c040421791334eba6c54df92"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1cf7d150-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b8db53c0-78f9-4820-8a46-93943da43582\" in room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\"","requestID":"1cf7d150-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1cf7d150-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"c1728278c040421791334eba6c54df92","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"c1728278c040421791334eba6c54df92"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fbe0050cd9d354a39dcfdaa8acef6501"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cfc1710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c0ff6dae78563b2a403cb4afbc09a30","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c0ff6dae78563b2a403cb4afbc09a30","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3d7cf5e-b7cd-499a-a418-4f2adff1d5f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.4459121} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.88958,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"}}},"level":"info","message":"received a callback","requestID":"3c0ff6dae78563b2a403cb4afbc09a30"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cfc1710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1cfc1710-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1cfe12e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cfc1710-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling 200 17ms","method":"POST","requestID":"1cfc1710-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51686772-eedd-40d8-929e-1c1aad5ba81a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d2c9b62-1b8b-4b8e-93a7-63346a8f8a63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.4606206} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.524961,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cff2450-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cfe12e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","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":"1cfe12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1cfe12e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} device-1 | {"level":"info","message":"GET /peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a 200 11ms","method":"GET","requestID":"1cfe12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed745543-7db5-4e5f-b75c-d2318222768e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.4685159} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.56925,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1cff2450-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","rebac_allow":false,"scope_allow":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":"1cff2450-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cff2450-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling 200 14ms","method":"POST","requestID":"1cff2450-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"3c0ff6dae78563b2a403cb4afbc09a30","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"3c0ff6dae78563b2a403cb4afbc09a30"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d02cdd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"374cfe6a-8080-49d9-a04c-dc148dca4b74","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.4919336} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.567473,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d02cdd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1d02cdd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d02cdd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling 200 13ms","method":"POST","requestID":"1d02cdd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d0517c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed4d576f-ead9-4222-a04b-5df8413cb582","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.5070438} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.282577,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d0517c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1d0517c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d0517c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling 200 13ms","method":"POST","requestID":"1d0517c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"3e892b313404270b8d23920851ba8281"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3e892b313404270b8d23920851ba8281","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","requestID":"3e892b313404270b8d23920851ba8281"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.242972,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3e892b313404270b8d23920851ba8281","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e892b313404270b8d23920851ba8281","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","requestID":"3e892b313404270b8d23920851ba8281"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e892b313404270b8d23920851ba8281"} experiment-1 | {"level":"info","message":"GET /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b 200 15ms","method":"GET","requestID":"3e892b313404270b8d23920851ba8281","responseTime":15,"status":200,"url":"/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"3ad66486431d54398252911a7e20dc54"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3ad66486431d54398252911a7e20dc54","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","requestID":"3ad66486431d54398252911a7e20dc54"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.75339,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ad66486431d54398252911a7e20dc54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ad66486431d54398252911a7e20dc54","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Attempting to finish experiment","requestID":"3ad66486431d54398252911a7e20dc54"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.895394,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","device":"603396af-a7cf-49a7-b131-f84d889e21b4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a","device":"2065b0d7-c86e-4c36-807c-ff3131daa1f3","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/51686772-eedd-40d8-929e-1c1aad5ba81a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b457a1c3-7238-4f84-a906-0fd308682494?id=7791bc09-21dc-455d-a9e5-bad9b9924fd4 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.183","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8afa6888c65d65e8ddb465875f6530d5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3833e438a11a754e5abd452a76e92130","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b457a1c3-7238-4f84-a906-0fd308682494?id=b8db53c0-78f9-4820-8a46-93943da43582 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.182","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5a7fb0304a2802a11f6df272e3de8925"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3833e438a11a754e5abd452a76e92130","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7791bc09-21dc-455d-a9e5-bad9b9924fd4\" in room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"}}},"level":"info","message":"received a callback","requestID":"3833e438a11a754e5abd452a76e92130"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7791bc09-21dc-455d-a9e5-bad9b9924fd4\" from room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\""} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f3a1089-deeb-476b-b3a1-bbcddb2f3324","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.5856562} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51686772-eedd-40d8-929e-1c1aad5ba81a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51686772-eedd-40d8-929e-1c1aad5ba81a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0733fce4-4b4c-44c1-be8c-75f8b015deda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.5863843} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f9c302c00b0e06edc32e9ce73e01b53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1f9c302c00b0e06edc32e9ce73e01b53","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b8db53c0-78f9-4820-8a46-93943da43582\" in room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b8db53c0-78f9-4820-8a46-93943da43582\" from room \"http://localhost/rooms/b457a1c3-7238-4f84-a906-0fd308682494\""} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"}}},"level":"info","message":"received a callback","requestID":"1f9c302c00b0e06edc32e9ce73e01b53"} device-1 | {"data":{"peerconnection":"51686772-eedd-40d8-929e-1c1aad5ba81a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a 204 52ms","method":"DELETE","requestID":"1d0df160-86cf-11ef-b00e-2fb111b9dda5","responseTime":52,"status":204,"url":"/peerconnections/51686772-eedd-40d8-929e-1c1aad5ba81a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"},"level":"info","message":"Successfully finished experiment","requestID":"3ad66486431d54398252911a7e20dc54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d193c00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F603396af-a7cf-49a7-b131-f84d889e21b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0245635d-2800-4bab-93d2-c107cf145d07","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.6397262} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.017049,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d193c00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4","object_type":"device","rebac_allow":false,"scope_allow":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":"1d193c00-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d193c00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f761241-5a53-4eca-824a-8a93f5f6cc7b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7f761241-5a53-4eca-824a-8a93f5f6cc7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"82ee4783-0276-4a3b-9e3a-5049c991cb73","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.648444} device-1 | {"level":"info","message":"POST /devices/603396af-a7cf-49a7-b131-f84d889e21b4/signaling 200 16ms","method":"POST","requestID":"1d193c00-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/603396af-a7cf-49a7-b131-f84d889e21b4/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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4b016a9-c287-4124-9bc9-10a5015b972b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.6490083} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3ad66486431d54398252911a7e20dc54","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d1c4940-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2065b0d7-c86e-4c36-807c-ff3131daa1f3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4241051b-b834-44fa-a658-37dbd7832ae2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.6586409} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.543544,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1d1c4940-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1d1c4940-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d1c4940-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling 200 14ms","method":"POST","requestID":"1d1c4940-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/2065b0d7-c86e-4c36-807c-ff3131daa1f3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b","requestID":"3ad66486431d54398252911a7e20dc54"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b 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":"3ad66486431d54398252911a7e20dc54"} experiment-1 | {"level":"info","message":"DELETE /experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b 204 183ms","method":"DELETE","requestID":"3ad66486431d54398252911a7e20dc54","responseTime":183,"status":204,"url":"/experiments/7f761241-5a53-4eca-824a-8a93f5f6cc7b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"3833e438a11a754e5abd452a76e92130","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15: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.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"3833e438a11a754e5abd452a76e92130"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"1f9c302c00b0e06edc32e9ce73e01b53","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"1f9c302c00b0e06edc32e9ce73e01b53"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"b435d5762b5b46f0da85fbfc07798e5c"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"b435d5762b5b46f0da85fbfc07798e5c","responseTime":8,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"0.811","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a9b3a92376e7ff1b2d3f235e2286d810"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"0.804","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8c36a76d180ddd07ebe0d69682a3e851"} device-1 | {"level":"info","message":"postDevices called","requestID":"b435d5762b5b46f0da85fbfc07798e5c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.886955,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b435d5762b5b46f0da85fbfc07798e5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","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/2065b0d7-c86e-4c36-807c-ff3131daa1f3' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/603396af-a7cf-49a7-b131-f84d889e21b4' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b0b0fd1d-42c5-410a-9fa9-f040cc9cbf31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.7603705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c460a45d-7d3b-42c0-a3fe-99977ffd9abf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.764767} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4ea2e6f6-fb8b-41ea-9712-bec1d0fdea43","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.776349} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"290286b3-9990-4d37-900d-9520a1fbc0de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.776565} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"1eefe167-e13d-4bb6-a3e3-be092084ad88","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.7808654} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b435d5762b5b46f0da85fbfc07798e5c"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"b435d5762b5b46f0da85fbfc07798e5c","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b435d5762b5b46f0da85fbfc07798e5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY","level":"info","message":"auth send jwt","requestID":"443de6531b35c63c058aa3622edd7916"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"443de6531b35c63c058aa3622edd7916","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"443de6531b35c63c058aa3622edd7916"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.794597,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"443de6531b35c63c058aa3622edd7916","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540957,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1N30.Wb7V4pu_s8rBp8Me_ohHAExoWniF34M8_mxHk93LLVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5608fb27-afc2-431e-b1a7-e72817d33eef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.8038898} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c519939f-137b-4593-85e5-42cdb286d639","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.8081427} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"089224e6-254f-4cff-ad53-caf572067f09","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.8174095} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22e8dc51-936f-4279-8ca7-b37b29c4750c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.8174615} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"fcb34df2-dea9-41a7-8f59-1a269858faf0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540957.8226569} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"443de6531b35c63c058aa3622edd7916"} gateway-1 | {"time_local":"10/Oct/2024:06:15:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"443de6531b35c63c058aa3622edd7916"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"443de6531b35c63c058aa3622edd7916","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OH0.Vu9J9mLYbCbz60dtBFtWVs1Uqg1JJwzQHAYaayhNACE","level":"info","message":"auth send jwt","requestID":"0a1889fd04bbb3f017d638d3333bc44c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0a1889fd04bbb3f017d638d3333bc44c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0a1889fd04bbb3f017d638d3333bc44c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34857,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0a1889fd04bbb3f017d638d3333bc44c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540958,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OH0.Vu9J9mLYbCbz60dtBFtWVs1Uqg1JJwzQHAYaayhNACE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a1889fd04bbb3f017d638d3333bc44c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"cde08a21-fdab-4ba3-bc9a-221abe87abbd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540958.3152337} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a1889fd04bbb3f017d638d3333bc44c","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3619919a-eaf4-4942-a1ec-723582ed923d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540958.3238757} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0a1889fd04bbb3f017d638d3333bc44c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"7b7b21f0-0a05-4952-afb1-969e17378d1f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540958.337532} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a1889fd04bbb3f017d638d3333bc44c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0a1889fd04bbb3f017d638d3333bc44c"} device-1 | {"level":"info","message":"PATCH /devices/130006ef-4cf1-4b84-9638-bd36360d4d05 200 43ms","method":"PATCH","requestID":"0a1889fd04bbb3f017d638d3333bc44c","responseTime":43,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"} gateway-1 | {"time_local":"10/Oct/2024:06:15:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/130006ef-4cf1-4b84-9638-bd36360d4d05 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0a1889fd04bbb3f017d638d3333bc44c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OH0.Vu9J9mLYbCbz60dtBFtWVs1Uqg1JJwzQHAYaayhNACE","level":"info","message":"auth send jwt","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331714,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fd71f55326a46aa75db7e2e7d2a4ba31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540958,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OH0.Vu9J9mLYbCbz60dtBFtWVs1Uqg1JJwzQHAYaayhNACE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31"} gateway-1 | {"time_local":"10/Oct/2024:06:15:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/websocket 200 26ms","method":"POST","requestID":"fd71f55326a46aa75db7e2e7d2a4ba31","responseTime":26,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"45111a6fc0b214af9928d81f220fd3da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"45111a6fc0b214af9928d81f220fd3da","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/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":"45111a6fc0b214af9928d81f220fd3da"} device-1 | {"level":"info","message":"OPTIONS /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/websocket 200 1ms","method":"OPTIONS","requestID":"45111a6fc0b214af9928d81f220fd3da","responseTime":1,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw","level":"info","message":"auth send jwt","requestID":"b941f677046cccf5aa4cee44af6989a3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b941f677046cccf5aa4cee44af6989a3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b941f677046cccf5aa4cee44af6989a3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.318352,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b941f677046cccf5aa4cee44af6989a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540959,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b941f677046cccf5aa4cee44af6989a3","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b941f677046cccf5aa4cee44af6989a3"} gateway-1 | {"time_local":"10/Oct/2024:06:15:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/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":"b941f677046cccf5aa4cee44af6989a3"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/websocket 200 24ms","method":"POST","requestID":"b941f677046cccf5aa4cee44af6989a3","responseTime":24,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4eadd7fcade0a843887bcd120c402f98","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4eadd7fcade0a843887bcd120c402f98","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:15:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4eadd7fcade0a843887bcd120c402f98"} device-1 | {"level":"info","message":"OPTIONS /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 2ms","method":"OPTIONS","requestID":"4eadd7fcade0a843887bcd120c402f98","responseTime":2,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw","level":"info","message":"auth send jwt","requestID":"0d86ec48973b1e29988a895eecb8f179"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0d86ec48973b1e29988a895eecb8f179","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0d86ec48973b1e29988a895eecb8f179"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223325,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0d86ec48973b1e29988a895eecb8f179","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540959,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d86ec48973b1e29988a895eecb8f179","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"f178ec5c-8504-48a3-911c-2282539c62b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540959.9277046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d86ec48973b1e29988a895eecb8f179","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c43d4297-ad1b-4b72-8990-a480c602e642","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540959.9365253} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0d86ec48973b1e29988a895eecb8f179","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"c6e018b4-6ee5-4b30-ae8f-c0e57010b16b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540959.9493995} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0d86ec48973b1e29988a895eecb8f179","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0d86ec48973b1e29988a895eecb8f179"} gateway-1 | {"time_local":"10/Oct/2024:06:15:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0d86ec48973b1e29988a895eecb8f179"} device-1 | {"level":"info","message":"PATCH /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 40ms","method":"PATCH","requestID":"0d86ec48973b1e29988a895eecb8f179","responseTime":40,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw","level":"info","message":"auth send jwt","requestID":"10c88ba3582f3194796a1ef5646fa760"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"10c88ba3582f3194796a1ef5646fa760","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10c88ba3582f3194796a1ef5646fa760"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218315,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"10c88ba3582f3194796a1ef5646fa760","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540959,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10c88ba3582f3194796a1ef5646fa760","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"467e9791-5a02-4eba-a520-99cf29d9c358","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540959.9817734} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10c88ba3582f3194796a1ef5646fa760","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10c88ba3582f3194796a1ef5646fa760"} gateway-1 | {"time_local":"10/Oct/2024:06:15:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10c88ba3582f3194796a1ef5646fa760"} device-1 | {"level":"info","message":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 18ms","method":"GET","requestID":"10c88ba3582f3194796a1ef5646fa760","responseTime":18,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw","level":"info","message":"auth send jwt","requestID":"459ff8c5f521f72f032b23e74e8cf621"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"459ff8c5f521f72f032b23e74e8cf621","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"459ff8c5f521f72f032b23e74e8cf621"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:15:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169618,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"459ff8c5f521f72f032b23e74e8cf621","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540959,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk1OX0.z6OcHtLJYYb5vp2TLI3qDcKdpTuPLDTrgdSwuQ1I7Zw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"459ff8c5f521f72f032b23e74e8cf621","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"ddf0a2f6-dabe-49aa-933d-5638bd84477e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.006033} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"459ff8c5f521f72f032b23e74e8cf621","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"459ff8c5f521f72f032b23e74e8cf621"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"459ff8c5f521f72f032b23e74e8cf621"} device-1 | {"level":"info","message":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? 200 16ms","method":"GET","requestID":"459ff8c5f521f72f032b23e74e8cf621","responseTime":16,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"38cc35d62d415b1c4d98cc7387c332f1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.358087,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38cc35d62d415b1c4d98cc7387c332f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38cc35d62d415b1c4d98cc7387c332f1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to run experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to book experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully booked experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666294,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682652,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"1d87a662-9a44-4272-9432-24cb3c0f0116","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.0787365} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"ae169a9d-c6ad-4c3b-bdc1-eb133f189c1d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.079868} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 21ms","method":"GET","requestID":"1e8cc930-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? 200 20ms","method":"GET","requestID":"1e8d1750-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Setting up experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully set up experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e99c180-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully running experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.74377,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.687224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.996971,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43137f76-05ff-4a18-9945-08d724ec10af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.1641476} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e99c180-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","rebac_allow":false,"scope_allow":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":"1e99c180-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"9a7620c4-a324-40dc-ab42-72172ee453bf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.1676223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"6aff0d19-02c0-49fc-8e82-32e70dc588df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.170211} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e99c180-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling 200 29ms","method":"POST","requestID":"1e99c180-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 36ms","method":"GET","requestID":"1e98fe30-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2502d205-fae5-470e-ac70-3ac8f455fb8b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2502d205-fae5-470e-ac70-3ac8f455fb8b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"876a3666-8332-459b-b7a1-1c811b144f35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.184643} device-1 | {"level":"info","message":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? 200 36ms","method":"GET","requestID":"1e994c50-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2877dc3-8de6-4490-b550-ee5611118cc4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.1852906} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e9ef1a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"38cc35d62d415b1c4d98cc7387c332f1","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ea00310-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e37bbb9d-80b2-4570-80c5-662e5a2b6adc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.1953707} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.94415,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e9ef1a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","rebac_allow":false,"scope_allow":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":"1e9ef1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24823584-6f9c-485a-997c-9c716b671149","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.201774} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.818214,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ea00310-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","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":"1e9ef1a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1ea00310-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.190","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"level":"info","message":"POST /experiments? 201 183ms","method":"POST","requestID":"38cc35d62d415b1c4d98cc7387c332f1","responseTime":183,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling 200 19ms","method":"POST","requestID":"1e9ef1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ea00310-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling 200 17ms","method":"POST","requestID":"1ea00310-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"4dd66a13bd73119a0c14a0cfd64070f2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4dd66a13bd73119a0c14a0cfd64070f2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ea2e940-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4dd66a13bd73119a0c14a0cfd64070f2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2cb8d33-3cde-497f-8209-082e8a03ef0f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2175708} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936098,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4dd66a13bd73119a0c14a0cfd64070f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4dd66a13bd73119a0c14a0cfd64070f2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.423691,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ea2e940-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ea2e940-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"3d1922f0-9d0f-4a14-9c3b-f20a92101e7e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2222805} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ea2e940-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling 200 11ms","method":"POST","requestID":"1ea2e940-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4dd66a13bd73119a0c14a0cfd64070f2","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4dd66a13bd73119a0c14a0cfd64070f2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4dd66a13bd73119a0c14a0cfd64070f2"} device-1 | {"level":"info","message":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 15ms","method":"GET","requestID":"4dd66a13bd73119a0c14a0cfd64070f2","responseTime":15,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908311,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636614,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"27eea9b7c972c20ac246154f177f89a1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.776336332Z"}]},"request_id":"5e48e1a7-8bd1-4d85-bce3-fb84b7651e38","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2373698} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"27eea9b7c972c20ac246154f177f89a1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27eea9b7c972c20ac246154f177f89a1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"9875f4be-d7c5-4a5e-a4b8-771104b2fe8c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.240114} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876834,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} device-1 | {"level":"info","message":"GET /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332? 200 18ms","method":"GET","requestID":"1ea50c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"27eea9b7c972c20ac246154f177f89a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27eea9b7c972c20ac246154f177f89a1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? 200 21ms","method":"GET","requestID":"1ea55a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:15:57.817374250Z"}]},"request_id":"a7ade277-db92-4346-8a0b-cdc6bb1b7c0a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2498095} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Building connection plan","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"f8d986a3-90b1-49a5-a861-43bbb0088001"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"4af7d9da-fa8d-4ccd-8778-8e1063f733bd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3fab823a-d73b-442e-8ba7-7c39f752476b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"27eea9b7c972c20ac246154f177f89a1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27eea9b7c972c20ac246154f177f89a1"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"1ea951e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"1ea951e0-86cf-11ef-a631-87f051e9b6e3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27eea9b7c972c20ac246154f177f89a1"} device-1 | {"level":"info","message":"GET /devices/130006ef-4cf1-4b84-9638-bd36360d4d05? 200 16ms","method":"GET","requestID":"27eea9b7c972c20ac246154f177f89a1","responseTime":16,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 7ms","method":"POST","requestID":"1ea951e0-86cf-11ef-a631-87f051e9b6e3","responseTime":7,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96?id=42f6333d-5962-4c85-b727-304ff323e036","ws://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96?id=f656a190-9c17-43f6-8e13-b8c2c704d4a4"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.008481,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"af5ab9cd-e5ab-4506-aa15-77a229f1f5d1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2793941} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54f674ad-eff8-4dd9-a1e5-a616d806dc7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.2798429} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809'","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809'","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} 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":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5","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":"1eaaff90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1eb11a10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f656a190-9c17-43f6-8e13-b8c2c704d4a4\" in room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\"","requestID":"1eb11a10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1eb11a10-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"430c6139f57d746bd7c02bacc6a3a85f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"430c6139f57d746bd7c02bacc6a3a85f","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1eb1b650-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42f6333d-5962-4c85-b727-304ff323e036\" in room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\"","requestID":"1eb1b650-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1eb1b650-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"}}},"level":"info","message":"received a callback","requestID":"430c6139f57d746bd7c02bacc6a3a85f"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"430c6139f57d746bd7c02bacc6a3a85f","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"430c6139f57d746bd7c02bacc6a3a85f"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"38cc35d62d415b1c4d98cc7387c332f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eb67140-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1c6766bbc539c71baafdf17c8f83c1f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"520004b3-8d80-464a-80d1-9034cf9c9254","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.3452616} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c1c6766bbc539c71baafdf17c8f83c1f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.545061,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1eb67140-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"}}},"level":"info","message":"received a callback","requestID":"c1c6766bbc539c71baafdf17c8f83c1f"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1eb67140-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1eb84600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eb67140-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling 200 16ms","method":"POST","requestID":"1eb67140-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8e8b34dc-d4be-4063-a5e0-d39325014809","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b5aea1d-7dfc-499f-a224-bc025520a520","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.3576133} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.948808,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eb93060-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1eb84600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809","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":"1eb84600-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1eb84600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809 200 10ms","method":"GET","requestID":"1eb84600-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c992017e-4762-42de-a74c-76eabf01d572","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.3643148} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.61428,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1eb93060-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1eb93060-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eb93060-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling 200 11ms","method":"POST","requestID":"1eb93060-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"c1c6766bbc539c71baafdf17c8f83c1f","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"c1c6766bbc539c71baafdf17c8f83c1f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ebc3da0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c763e2c5-f1e6-4654-be8c-029c39e36958","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.3835247} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.402786,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ebc3da0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ebc3da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ebc3da0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling 200 10ms","method":"POST","requestID":"1ebc3da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ebe3970-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49dd6132-9cbe-437e-9a64-2209545291e8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.3970485} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.630417,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ebe3970-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ebe3970-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ebe3970-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling 200 11ms","method":"POST","requestID":"1ebe3970-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"0603eae1557b92dc4406d10b6532a9b3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0603eae1557b92dc4406d10b6532a9b3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","requestID":"0603eae1557b92dc4406d10b6532a9b3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.03573,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0603eae1557b92dc4406d10b6532a9b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0603eae1557b92dc4406d10b6532a9b3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","requestID":"0603eae1557b92dc4406d10b6532a9b3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0603eae1557b92dc4406d10b6532a9b3"} experiment-1 | {"level":"info","message":"GET /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b 200 11ms","method":"GET","requestID":"0603eae1557b92dc4406d10b6532a9b3","responseTime":11,"status":200,"url":"/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"d1cbc4847472c2a37b29c68419015eb0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d1cbc4847472c2a37b29c68419015eb0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","requestID":"d1cbc4847472c2a37b29c68419015eb0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.693619,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d1cbc4847472c2a37b29c68419015eb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1cbc4847472c2a37b29c68419015eb0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Attempting to finish experiment","requestID":"d1cbc4847472c2a37b29c68419015eb0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.043921,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6a064448-69fc-4961-9bf3-6115b5663c96?id=f656a190-9c17-43f6-8e13-b8c2c704d4a4 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2e39d35a1af7549aa437a6498b97ba00"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f656a190-9c17-43f6-8e13-b8c2c704d4a4\" in room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f656a190-9c17-43f6-8e13-b8c2c704d4a4\" from room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809","device":"3e9c1d11-5b1d-44ec-8c11-e119e8197332","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/8e8b34dc-d4be-4063-a5e0-d39325014809' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6a064448-69fc-4961-9bf3-6115b5663c96?id=42f6333d-5962-4c85-b727-304ff323e036 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.157","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f9a03ffb84fae92c2ac5665b54b5ad41"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"42f6333d-5962-4c85-b727-304ff323e036\" in room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"42f6333d-5962-4c85-b727-304ff323e036\" from room \"http://localhost/rooms/6a064448-69fc-4961-9bf3-6115b5663c96\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"490dcb5405268b0fbcc708101a3bedd3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"490dcb5405268b0fbcc708101a3bedd3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8e8b34dc-d4be-4063-a5e0-d39325014809': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8e8b34dc-d4be-4063-a5e0-d39325014809","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5ee1bcec-23bf-49f7-a59b-1305a698f3de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.4702451} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9d4bfff-ee05-46c5-87af-581611ae3214","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.4706745} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26215a9031f89fb6a7ce345dffc6068d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"}}},"level":"info","message":"received a callback","requestID":"490dcb5405268b0fbcc708101a3bedd3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26215a9031f89fb6a7ce345dffc6068d","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"}}},"level":"info","message":"received a callback","requestID":"26215a9031f89fb6a7ce345dffc6068d"} device-1 | {"data":{"peerconnection":"8e8b34dc-d4be-4063-a5e0-d39325014809","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809 204 47ms","method":"DELETE","requestID":"1ec628b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":47,"status":204,"url":"/peerconnections/8e8b34dc-d4be-4063-a5e0-d39325014809"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"},"level":"info","message":"Successfully finished experiment","requestID":"d1cbc4847472c2a37b29c68419015eb0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ed013c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e9c1d11-5b1d-44ec-8c11-e119e8197332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ac40f44-f672-4503-9f6c-a9eb1c9f1d86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.5140467} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.993644,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ed013c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ed013c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2502d205-fae5-470e-ac70-3ac8f455fb8b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2502d205-fae5-470e-ac70-3ac8f455fb8b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"502d7cbd-e21c-446b-8b55-bdc1a78c1293","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.520669} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4bfdd8c-2abe-4b1a-9d24-d306dfb77ab7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.5214832} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d1cbc4847472c2a37b29c68419015eb0","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ed013c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling 200 21ms","method":"POST","requestID":"1ed013c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/3e9c1d11-5b1d-44ec-8c11-e119e8197332/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ed39630-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F130006ef-4cf1-4b84-9638-bd36360d4d05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54d06c8b-519c-4a5c-9ce4-cc6da85f3844","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.5354245} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.131268,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ed39630-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/130006ef-4cf1-4b84-9638-bd36360d4d05","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ed39630-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ed39630-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling 200 8ms","method":"POST","requestID":"1ed39630-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/130006ef-4cf1-4b84-9638-bd36360d4d05/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b","requestID":"d1cbc4847472c2a37b29c68419015eb0"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1cbc4847472c2a37b29c68419015eb0"} experiment-1 | {"level":"info","message":"DELETE /experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b 204 150ms","method":"DELETE","requestID":"d1cbc4847472c2a37b29c68419015eb0","responseTime":150,"status":204,"url":"/experiments/2502d205-fae5-470e-ac70-3ac8f455fb8b"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"2.204","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"dc1906a8b771644027091365a42f635a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"490dcb5405268b0fbcc708101a3bedd3","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"490dcb5405268b0fbcc708101a3bedd3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"531537bb3b5f6b720edf134bfe9bfc5f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"26215a9031f89fb6a7ce345dffc6068d","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"26215a9031f89fb6a7ce345dffc6068d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.720","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a087a170630ba8e75623488e4ec758da"} device-1 | {"level":"info","message":"postDevices called","requestID":"531537bb3b5f6b720edf134bfe9bfc5f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.881994,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"531537bb3b5f6b720edf134bfe9bfc5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","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/130006ef-4cf1-4b84-9638-bd36360d4d05' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d7c02803-3f3a-42eb-9ac4-81d6e60976c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6134546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","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/3e9c1d11-5b1d-44ec-8c11-e119e8197332' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81e0bd61-117a-4a7b-a637-4c9765c72139","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6185486} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1380dbbf-fdfc-4449-b3f2-37708c7d1797","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6275868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"998889fa-de23-4ac1-ae27-04c3df7b4526","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6278994} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"bcf14696-118c-42ae-b820-919643a718dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.631964} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"531537bb3b5f6b720edf134bfe9bfc5f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"531537bb3b5f6b720edf134bfe9bfc5f"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"531537bb3b5f6b720edf134bfe9bfc5f","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8","level":"info","message":"auth send jwt","requestID":"e1d2181272cc139728d6a3493b5186c2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e1d2181272cc139728d6a3493b5186c2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e1d2181272cc139728d6a3493b5186c2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.979627,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e1d2181272cc139728d6a3493b5186c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540960,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MH0.M8oJ7VY469DRLteSkVOKjaa_CVkJ3e_W8A59UJexeF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c526d450-5d5f-4355-ba31-994fc2743d86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6608133} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a94a7841-0d9a-4767-b572-daf73f44c5f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.666318} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b36e2e0a-8df4-4e55-aa94-bbf8c4077dbb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6767678} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64fbb4e3-3465-4a67-826c-876a9a16cfb5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.677024} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"f3028f42-265c-4f42-9068-a5a3f8b8e71c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540960.6809528} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e1d2181272cc139728d6a3493b5186c2"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e1d2181272cc139728d6a3493b5186c2","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1d2181272cc139728d6a3493b5186c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MX0.kQcZv_5xJSosVhhFTxbCGr7IE8oEZYdLQpJLwfqYyEQ","level":"info","message":"auth send jwt","requestID":"bed53039a91c037aa8f30ea432cc22d9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bed53039a91c037aa8f30ea432cc22d9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bed53039a91c037aa8f30ea432cc22d9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.345742,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bed53039a91c037aa8f30ea432cc22d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540961,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MX0.kQcZv_5xJSosVhhFTxbCGr7IE8oEZYdLQpJLwfqYyEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bed53039a91c037aa8f30ea432cc22d9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"58eb2b29-1c63-429e-b8a6-821e76f8e2f0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540961.1720753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bed53039a91c037aa8f30ea432cc22d9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"907990d1-455d-4f1c-a098-798aa7aa1b47","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540961.1796017} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bed53039a91c037aa8f30ea432cc22d9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"3887d1b1-c1a8-4f5a-8c85-f400d7718def","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540961.192322} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bed53039a91c037aa8f30ea432cc22d9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bed53039a91c037aa8f30ea432cc22d9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6636e27f-b758-46a5-bdf0-5c463e55e438 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"bed53039a91c037aa8f30ea432cc22d9"} device-1 | {"level":"info","message":"PATCH /devices/6636e27f-b758-46a5-bdf0-5c463e55e438 200 40ms","method":"PATCH","requestID":"bed53039a91c037aa8f30ea432cc22d9","responseTime":40,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MX0.kQcZv_5xJSosVhhFTxbCGr7IE8oEZYdLQpJLwfqYyEQ","level":"info","message":"auth send jwt","requestID":"ea0a12b9a966394ea168b2547e7ac64f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ea0a12b9a966394ea168b2547e7ac64f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea0a12b9a966394ea168b2547e7ac64f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.399724,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ea0a12b9a966394ea168b2547e7ac64f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540961,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2MX0.kQcZv_5xJSosVhhFTxbCGr7IE8oEZYdLQpJLwfqYyEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ea0a12b9a966394ea168b2547e7ac64f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea0a12b9a966394ea168b2547e7ac64f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ea0a12b9a966394ea168b2547e7ac64f"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/websocket 200 23ms","method":"POST","requestID":"ea0a12b9a966394ea168b2547e7ac64f","responseTime":23,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5cd5792d9d6c5e6950f9d71b3f21c99b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5cd5792d9d6c5e6950f9d71b3f21c99b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/31afc67b-1884-4435-9a4a-b447737d7d34/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":"5cd5792d9d6c5e6950f9d71b3f21c99b"} device-1 | {"level":"info","message":"OPTIONS /devices/31afc67b-1884-4435-9a4a-b447737d7d34/websocket 200 1ms","method":"OPTIONS","requestID":"5cd5792d9d6c5e6950f9d71b3f21c99b","responseTime":1,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8","level":"info","message":"auth send jwt","requestID":"6dc51a491fcce0ca51235f8a4e89ef65"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6dc51a491fcce0ca51235f8a4e89ef65","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6dc51a491fcce0ca51235f8a4e89ef65"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.399868,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6dc51a491fcce0ca51235f8a4e89ef65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6dc51a491fcce0ca51235f8a4e89ef65","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6dc51a491fcce0ca51235f8a4e89ef65"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/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":"6dc51a491fcce0ca51235f8a4e89ef65"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/websocket 200 24ms","method":"POST","requestID":"6dc51a491fcce0ca51235f8a4e89ef65","responseTime":24,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70318209922bbf853025e0a3828ac7a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"70318209922bbf853025e0a3828ac7a5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/31afc67b-1884-4435-9a4a-b447737d7d34? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"70318209922bbf853025e0a3828ac7a5"} device-1 | {"level":"info","message":"OPTIONS /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 1ms","method":"OPTIONS","requestID":"70318209922bbf853025e0a3828ac7a5","responseTime":1,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8","level":"info","message":"auth send jwt","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.269396,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"e45571d9-4db9-4a2f-a608-fcac1a597475","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.7813387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"625ed3f0-99ab-46de-9c24-02626c478764","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.7881372} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"a8b626a7-ddd6-4eff-a095-92172e88c08d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.798657} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d"} device-1 | {"level":"info","message":"PATCH /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 36ms","method":"PATCH","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d","responseTime":36,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/31afc67b-1884-4435-9a4a-b447737d7d34? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a964558fb5b9bc59f18e47dbcbf5d33d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8","level":"info","message":"auth send jwt","requestID":"53d7dadd9305708e033d56a8df66bc6b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53d7dadd9305708e033d56a8df66bc6b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53d7dadd9305708e033d56a8df66bc6b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1931,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53d7dadd9305708e033d56a8df66bc6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53d7dadd9305708e033d56a8df66bc6b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"b4602c67-e6c4-4092-bf1a-e24271135b65","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.829827} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53d7dadd9305708e033d56a8df66bc6b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53d7dadd9305708e033d56a8df66bc6b"} device-1 | {"level":"info","message":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? 200 23ms","method":"GET","requestID":"53d7dadd9305708e033d56a8df66bc6b","responseTime":23,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53d7dadd9305708e033d56a8df66bc6b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8","level":"info","message":"auth send jwt","requestID":"8154bc4f336232a5835d1aa2dcc660a8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8154bc4f336232a5835d1aa2dcc660a8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8154bc4f336232a5835d1aa2dcc660a8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.418118,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8154bc4f336232a5835d1aa2dcc660a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8154bc4f336232a5835d1aa2dcc660a8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"6f33bf24-1d80-4ace-af8c-fc72b4dbf4aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.8556654} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8154bc4f336232a5835d1aa2dcc660a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8154bc4f336232a5835d1aa2dcc660a8"} gateway-1 | {"time_local":"10/Oct/2024:06:16:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8154bc4f336232a5835d1aa2dcc660a8"} device-1 | {"level":"info","message":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 18ms","method":"GET","requestID":"8154bc4f336232a5835d1aa2dcc660a8","responseTime":18,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8","level":"info","message":"auth send jwt","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2918ddb4d8b7001f9459a995b7e2805a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.877832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2918ddb4d8b7001f9459a995b7e2805a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2918ddb4d8b7001f9459a995b7e2805a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to run experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to book experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully booked experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622554,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000923,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"d4bd4327-b07f-47fb-8aac-e993d84b5fca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.9192128} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"ccd8b81d-0c66-4492-9cb1-98edb33a3e02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540962.9205399} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? 200 20ms","method":"GET","requestID":"203e49c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 20ms","method":"GET","requestID":"203e97e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Setting up experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully set up experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"204b9030-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully running experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.788644,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312814,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.862968,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"017cc2d3-02a3-488c-9509-d0721e92ba79","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0059211} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"204b9030-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","rebac_allow":false,"scope_allow":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":"204b9030-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"a2662fb3-b301-4e78-be22-98944d86a3e4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0114307} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"9144b8cf-ea95-4ea0-a178-97f643d2f442","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.016219} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"204b9030-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling 200 29ms","method":"POST","requestID":"204b9030-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? 200 38ms","method":"GET","requestID":"204acce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":38,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 38ms","method":"GET","requestID":"204b1b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":38,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6481df15-d73f-4479-b688-daba5a4abb08#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6481df15-d73f-4479-b688-daba5a4abb08","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ba3e7ba8-9fbf-4ea8-aba7-9f9e891b8183","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0300596} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20510e70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9cbb80f-4c42-4fa7-998c-5becca69e374","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.030996} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2051aab0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"2918ddb4d8b7001f9459a995b7e2805a","responseTime":35,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e9d9875-e22f-4525-9986-6c21c0f117ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0449908} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.121963,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20510e70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","rebac_allow":false,"scope_allow":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":"20510e70-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c064fe63-b916-4e02-8e23-4b673272a9db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.046762} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.471725,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 181ms","method":"POST","requestID":"2918ddb4d8b7001f9459a995b7e2805a","responseTime":181,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2051aab0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","rebac_allow":false,"scope_allow":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":"2051aab0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20510e70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling 200 23ms","method":"POST","requestID":"20510e70-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"d684171c7f60cb173e45887baf1cee7f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d684171c7f60cb173e45887baf1cee7f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2051aab0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling 200 21ms","method":"POST","requestID":"2051aab0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d684171c7f60cb173e45887baf1cee7f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20555430-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762198,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d684171c7f60cb173e45887baf1cee7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d684171c7f60cb173e45887baf1cee7f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dbc4b9b8-b9b2-4b9d-a968-2e254d28ce4d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0642133} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.405679,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20555430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20555430-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"aa18dcf8-c836-4b09-bba7-b72ec2908aad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0688381} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d684171c7f60cb173e45887baf1cee7f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20555430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling 200 13ms","method":"POST","requestID":"20555430-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d684171c7f60cb173e45887baf1cee7f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d684171c7f60cb173e45887baf1cee7f"} device-1 | {"level":"info","message":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? 200 18ms","method":"GET","requestID":"d684171c7f60cb173e45887baf1cee7f","responseTime":18,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99892,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"9cbc3dbc4855de8b9e4049831fcac606"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9cbc3dbc4855de8b9e4049831fcac606","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9cbc3dbc4855de8b9e4049831fcac606"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707509,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084843,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9cbc3dbc4855de8b9e4049831fcac606","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9cbc3dbc4855de8b9e4049831fcac606","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.627570441Z"}]},"request_id":"554044d8-b35a-415c-8aa6-eebb8565fc27","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.085457} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"74194d40-ca63-49c8-b3d9-295261b91576","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0893686} device-1 | {"level":"info","message":"GET /devices/6636e27f-b758-46a5-bdf0-5c463e55e438? 200 14ms","method":"GET","requestID":"2057ec40-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9cbc3dbc4855de8b9e4049831fcac606","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:00.676749561Z"}]},"request_id":"757b515e-7c3a-4d77-a6cf-77bc49615c60","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.0903673} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9cbc3dbc4855de8b9e4049831fcac606"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9cbc3dbc4855de8b9e4049831fcac606"} device-1 | {"level":"info","message":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 14ms","method":"GET","requestID":"9cbc3dbc4855de8b9e4049831fcac606","responseTime":14,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31afc67b-1884-4435-9a4a-b447737d7d34? 200 19ms","method":"GET","requestID":"20581350-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Building connection plan","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"cd55b396-0dee-4de4-bc3e-7abc578ee9b7"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"268363eb-4c8e-4145-8a3f-cfb43b5167ab"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d9b3c200-2778-4243-af39-98901fe50009"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"205b6eb0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"205b6eb0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"205b6eb0-86cf-11ef-a631-87f051e9b6e3","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f?id=02564a1f-fbbb-40c6-aefc-e421025308bc","ws://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f?id=5b1db6df-93c9-431b-a8a9-77270bd5794a"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.06578,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540962,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2Mn0.jYKcLWnK2N4ubGiVUkVkO2gHVjLVTjL9HSKFSAjRIf8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1747502e-491d-4949-9572-51ed0f13863f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.1202462} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddaecc78-eb38-4bed-91fd-7609891b7d98","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.1204967} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a'","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a'","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} 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":"205c5910-86cf-11ef-b00e-2fb111b9dda5","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":"205c5910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"2062e8c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"02564a1f-fbbb-40c6-aefc-e421025308bc\" in room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\"","requestID":"2062e8c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"2062e8c0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"acf5c04ae3eded255a391185baadbf10","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"acf5c04ae3eded255a391185baadbf10","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"20635df0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5b1db6df-93c9-431b-a8a9-77270bd5794a\" in room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\"","requestID":"20635df0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"20635df0-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"}}},"level":"info","message":"received a callback","requestID":"acf5c04ae3eded255a391185baadbf10"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"acf5c04ae3eded255a391185baadbf10","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"acf5c04ae3eded255a391185baadbf10"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2918ddb4d8b7001f9459a995b7e2805a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20688e10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"478f480b-1101-4a36-b6f8-882902e1ae08","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.1910412} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ead354f40c82c15603601d328df884cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:58336","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.245898,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ead354f40c82c15603601d328df884cc","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20688e10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","rebac_allow":false,"scope_allow":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":"20688e10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"}}},"level":"info","message":"received a callback","requestID":"ead354f40c82c15603601d328df884cc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"206ad800-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20688e10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling 200 18ms","method":"POST","requestID":"20688e10-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0d208af7-44cc-4e00-87ba-fcf938febf6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd2c475b-d8fc-478e-89e8-e7570137fbb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.2056847} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.392675,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"206bc260-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"206ad800-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a","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":"206ad800-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"206ad800-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} device-1 | {"level":"info","message":"GET /peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a 200 10ms","method":"GET","requestID":"206ad800-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a60f8422-07a5-49ec-b1b5-f474c2707c39","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.212958} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.262515,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"206bc260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"206bc260-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"206bc260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling 200 12ms","method":"POST","requestID":"206bc260-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"ead354f40c82c15603601d328df884cc","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"ead354f40c82c15603601d328df884cc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"206f44d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a29d1b75-92ab-4ffb-b756-28bdbc22aa2d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.2348406} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.032546,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"206f44d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"206f44d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"206f44d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling 200 11ms","method":"POST","requestID":"206f44d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"207140a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee4c59bb-2aef-4100-b7d6-3d135b5214db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.2487693} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.276688,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"207140a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"207140a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"207140a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling 200 12ms","method":"POST","requestID":"207140a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"731c50be6e9d12b7ec3e0453b14e7366"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"731c50be6e9d12b7ec3e0453b14e7366","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6481df15-d73f-4479-b688-daba5a4abb08","requestID":"731c50be6e9d12b7ec3e0453b14e7366"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.959505,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"731c50be6e9d12b7ec3e0453b14e7366","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"731c50be6e9d12b7ec3e0453b14e7366","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6481df15-d73f-4479-b688-daba5a4abb08","requestID":"731c50be6e9d12b7ec3e0453b14e7366"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6481df15-d73f-4479-b688-daba5a4abb08 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"731c50be6e9d12b7ec3e0453b14e7366"} experiment-1 | {"level":"info","message":"GET /experiments/6481df15-d73f-4479-b688-daba5a4abb08 200 13ms","method":"GET","requestID":"731c50be6e9d12b7ec3e0453b14e7366","responseTime":13,"status":200,"url":"/experiments/6481df15-d73f-4479-b688-daba5a4abb08"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6481df15-d73f-4479-b688-daba5a4abb08","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.331653,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Attempting to finish experiment","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.667923,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b65283f5-9403-4df7-bfe7-a7268b95057f?id=02564a1f-fbbb-40c6-aefc-e421025308bc HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1276689a7cb97050fb9693c601c633ff"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"02564a1f-fbbb-40c6-aefc-e421025308bc\" in room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"02564a1f-fbbb-40c6-aefc-e421025308bc\" from room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b65283f5-9403-4df7-bfe7-a7268b95057f?id=5b1db6df-93c9-431b-a8a9-77270bd5794a HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.158","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"786d242db5fe02504a8015455e45ebb0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5b1db6df-93c9-431b-a8a9-77270bd5794a\" in room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5b1db6df-93c9-431b-a8a9-77270bd5794a\" from room \"http://localhost/rooms/b65283f5-9403-4df7-bfe7-a7268b95057f\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b7225ab53e3a206d95be591cc242e0c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a","device":"31afc67b-1884-4435-9a4a-b447737d7d34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9b7225ab53e3a206d95be591cc242e0c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"}}},"level":"info","message":"received a callback","requestID":"9b7225ab53e3a206d95be591cc242e0c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4b98389c7de41f5561e2c59494e7961","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f4b98389c7de41f5561e2c59494e7961","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"}}},"level":"info","message":"received a callback","requestID":"f4b98389c7de41f5561e2c59494e7961"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0d208af7-44cc-4e00-87ba-fcf938febf6a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0d208af7-44cc-4e00-87ba-fcf938febf6a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"f3729534-4d3c-415c-b5f5-34fe9288e491","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.3140082} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1b99466-cbc6-4f62-8563-0da413192de4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.3143477} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"0d208af7-44cc-4e00-87ba-fcf938febf6a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a 204 39ms","method":"DELETE","requestID":"20792fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":39,"status":204,"url":"/peerconnections/0d208af7-44cc-4e00-87ba-fcf938febf6a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6481df15-d73f-4479-b688-daba5a4abb08"},"level":"info","message":"Successfully finished experiment","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2082a5c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6636e27f-b758-46a5-bdf0-5c463e55e438","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66ac4973-3aa0-48aa-920f-114d581be4d8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.3632116} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.360522,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2082a5c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6636e27f-b758-46a5-bdf0-5c463e55e438","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2082a5c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2082a5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling 200 14ms","method":"POST","requestID":"2082a5c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/6636e27f-b758-46a5-bdf0-5c463e55e438/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6481df15-d73f-4479-b688-daba5a4abb08': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6481df15-d73f-4479-b688-daba5a4abb08","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"43190515-622b-4a0a-be34-9150c90c0d01","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.370363} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12455909-126d-4a50-a106-4dc20f87a9e9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.3709497} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20853dd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31afc67b-1884-4435-9a4a-b447737d7d34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95494d3e-a4ad-41d9-bddc-37ae0af6e983","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.378234} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.861074,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20853dd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31afc67b-1884-4435-9a4a-b447737d7d34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20853dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20853dd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling 200 10ms","method":"POST","requestID":"20853dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/31afc67b-1884-4435-9a4a-b447737d7d34/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6481df15-d73f-4479-b688-daba5a4abb08","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6481df15-d73f-4479-b688-daba5a4abb08 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"2.210","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e59f43932110967d225d3dfbad9e04a9"} experiment-1 | {"level":"info","message":"DELETE /experiments/6481df15-d73f-4479-b688-daba5a4abb08 204 158ms","method":"DELETE","requestID":"3596785bb97bdf3fe269c5e5d8e3bbc1","responseTime":158,"status":204,"url":"/experiments/6481df15-d73f-4479-b688-daba5a4abb08"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"9b7225ab53e3a206d95be591cc242e0c","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b7225ab53e3a206d95be591cc242e0c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"f4b98389c7de41f5561e2c59494e7961","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4b98389c7de41f5561e2c59494e7961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.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":"f2ed809e021e4a0b17a169a28cb415b6"} device-1 | {"level":"info","message":"postDevices called","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.591082,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","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/6636e27f-b758-46a5-bdf0-5c463e55e438' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"01d8809f-e413-457d-911a-f2d9d9628f55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.4658747} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","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/31afc67b-1884-4435-9a4a-b447737d7d34' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54cb13a7-a56d-4060-b18d-19b0dc188545","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.4714782} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"25711507-f40b-4d7c-9fbb-0a95672f1157","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.4817996} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f66ef39f-2e88-4698-b13f-b193e8f03c26","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.4821775} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"6d33d5b2-1dc3-4d58-ad99-ffba4ccab920","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.4875383} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c5ad18926be1ca2b9aa9a9f4730f7d8f","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o","level":"info","message":"auth send jwt","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.750566,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540963,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2M30.QFJ16IGG-sP_M12WCbjr9wVwnhPLuSKfTa4s2q4dp1o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1186a5b0-d68e-4af3-95bd-a728fb43b5bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.5174963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ae68beb-f458-4b8f-9e5c-0f855c07eb5c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.5228693} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b59c0d9a-f720-477c-905f-25a86a5ee285","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.5341473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32d0660e-62e8-4081-a845-6274ea4fa4b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.5344105} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"b934249b-d446-401a-88f7-7baf435ff6bf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540963.5390785} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"2c3c426d567bc79aa20c7a7d27a6f66f","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"4e97489afd298846c471e55ed175e24a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e97489afd298846c471e55ed175e24a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4e97489afd298846c471e55ed175e24a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"ae3331a78044ff9db77ca3f41a10f040"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae3331a78044ff9db77ca3f41a10f040","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ae3331a78044ff9db77ca3f41a10f040"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904157,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4e97489afd298846c471e55ed175e24a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4e97489afd298846c471e55ed175e24a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.778758,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ae3331a78044ff9db77ca3f41a10f040","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae3331a78044ff9db77ca3f41a10f040","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"d11e4114-4658-4794-b191-0d50a12bd2e1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.0180721} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e97489afd298846c471e55ed175e24a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"1d700162-4ebd-4396-91dd-29162e44e02a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.0189414} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae3331a78044ff9db77ca3f41a10f040","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dc7fd3a-d3c8-4ab9-aacb-403d4ea50ffd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.023817} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4e97489afd298846c471e55ed175e24a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07247cae-7e86-452d-80d8-9908251c1dac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.026097} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ae3331a78044ff9db77ca3f41a10f040","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"f649fdc8-e5d2-4803-a605-dce74bcd5ab5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.029303} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae3331a78044ff9db77ca3f41a10f040","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ae3331a78044ff9db77ca3f41a10f040"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/04a2c58f-0b68-4016-88ed-a31f89c53101 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ae3331a78044ff9db77ca3f41a10f040"} device-1 | {"level":"info","message":"PATCH /devices/04a2c58f-0b68-4016-88ed-a31f89c53101 200 24ms","method":"PATCH","requestID":"ae3331a78044ff9db77ca3f41a10f040","responseTime":24,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"da98cab9f6443af01be3497b5ea3aa6d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"da98cab9f6443af01be3497b5ea3aa6d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"da98cab9f6443af01be3497b5ea3aa6d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745941,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"da98cab9f6443af01be3497b5ea3aa6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"da98cab9f6443af01be3497b5ea3aa6d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"2f5cc24c-f34d-46e1-8f0a-36494b9bba12","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.0438423} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e97489afd298846c471e55ed175e24a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4e97489afd298846c471e55ed175e24a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4e97489afd298846c471e55ed175e24a"} device-1 | {"level":"info","message":"PATCH /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6 200 41ms","method":"PATCH","requestID":"4e97489afd298846c471e55ed175e24a","responseTime":41,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"d02f13d2ea3584f769b65f1512ef2929"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d02f13d2ea3584f769b65f1512ef2929","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d02f13d2ea3584f769b65f1512ef2929"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"da98cab9f6443af01be3497b5ea3aa6d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"da98cab9f6443af01be3497b5ea3aa6d"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/websocket 200 17ms","method":"POST","requestID":"da98cab9f6443af01be3497b5ea3aa6d","responseTime":17,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820624,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d02f13d2ea3584f769b65f1512ef2929","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d02f13d2ea3584f769b65f1512ef2929","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d02f13d2ea3584f769b65f1512ef2929"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d02f13d2ea3584f769b65f1512ef2929"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/websocket 200 20ms","method":"POST","requestID":"d02f13d2ea3584f769b65f1512ef2929","responseTime":20,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915557,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"7e8ac988-1e0d-4123-9b54-4a5a64e97a4d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.0942345} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9"} device-1 | {"level":"info","message":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? 200 12ms","method":"GET","requestID":"3f73f3c7e7441a4f9f0a7ee01ef814c9","responseTime":12,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71397,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"1dcb8f86-f853-4fcc-ba9f-1a49dbdff0a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.1111493} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1"} device-1 | {"level":"info","message":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? 200 12ms","method":"GET","requestID":"fdd7e2733ee8a8e2317ec66881bbe0d1","responseTime":12,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"81c5c6b842366305c1144c91df9a2a17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81c5c6b842366305c1144c91df9a2a17","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"81c5c6b842366305c1144c91df9a2a17"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.830234,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"81c5c6b842366305c1144c91df9a2a17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81c5c6b842366305c1144c91df9a2a17","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to run experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to book experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully booked experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121788,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.098585,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"bba989a7-7471-4024-bf89-fc2d3038ad0d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.1781301} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"ae7aaca2-ceb8-457a-8611-c7b6032c196c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.1801126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? 200 22ms","method":"GET","requestID":"20fe3e60-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? 200 22ms","method":"GET","requestID":"20fe6570-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Setting up experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully locked booking for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to update booking for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully updated booking for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully set up experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2109d720-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully running experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.046966,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642286,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"a4357d5f-bff3-4d5f-bc01-03b50f207e41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2537327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"7c966915-5654-406f-8481-664439f8fb89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.255907} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cbe5439-54ce-47ff-840a-dfc73d812d8f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.258203} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.489563,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2109d720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","rebac_allow":false,"scope_allow":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":"2109d720-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? 200 24ms","method":"GET","requestID":"21093ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? 200 22ms","method":"GET","requestID":"21098900-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2109d720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling 200 22ms","method":"POST","requestID":"2109d720-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"210d5990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"210d80a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95fea870-98c0-44a2-b6fc-6f7f17584636#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95fea870-98c0-44a2-b6fc-6f7f17584636","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5c5ebe8d-8353-4f3b-8043-7bfbb5c26bca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2673361} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbdfab90-ed22-481e-8070-7d9d3abc648f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.267564} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"81c5c6b842366305c1144c91df9a2a17","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9710f265-c5e1-4ac8-b47e-b30ad2074f67","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2711983} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.70425,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"210d5990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","rebac_allow":false,"scope_allow":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":"210d5990-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"415599ed-0351-4237-b104-0754b0c4e887","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2746098} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.242398,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"210d80a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"210d80a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"210d5990-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling 200 13ms","method":"POST","requestID":"210d5990-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"81c5c6b842366305c1144c91df9a2a17","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"210d80a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling 200 15ms","method":"POST","requestID":"210d80a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"a34b763bade38dd695d5bd75ead9e2e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"211018b0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a34b763bade38dd695d5bd75ead9e2e3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a34b763bade38dd695d5bd75ead9e2e3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1eaad829-f2fe-42c4-a6d1-0bf735fb5871","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2878187} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806632,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a34b763bade38dd695d5bd75ead9e2e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a34b763bade38dd695d5bd75ead9e2e3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.260616,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"211018b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"211018b0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"de1cc82a-0ea5-452d-a38b-10ea07924b75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.2921262} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"211018b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a34b763bade38dd695d5bd75ead9e2e3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling 200 10ms","method":"POST","requestID":"211018b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a34b763bade38dd695d5bd75ead9e2e3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a34b763bade38dd695d5bd75ead9e2e3"} device-1 | {"level":"info","message":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? 200 14ms","method":"GET","requestID":"a34b763bade38dd695d5bd75ead9e2e3","responseTime":14,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.792401,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622382,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.481767271Z"}]},"request_id":"b5a14acb-c1cb-4de2-9ec6-c3b534024b92","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.3043215} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"45c75b15-da07-4d53-8a30-873fb3627c6e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.3054786} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716311,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} device-1 | {"level":"info","message":"GET /devices/04a2c58f-0b68-4016-88ed-a31f89c53101? 200 13ms","method":"GET","requestID":"2111ed70-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a13ddfa4c4e9947a9150e27f9382f7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? 200 15ms","method":"GET","requestID":"21123b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:03.534133Z"}]},"request_id":"86ba58df-695b-46be-b076-4a9a796a6128","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.3128548} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Building connection plan","requestID":"81c5c6b842366305c1144c91df9a2a17"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"0cd2d78a-063f-439b-b8bd-ea9decbb53e2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"12ac6110-a44e-4195-b83a-0a81cabb2810"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c38a798e-7a7f-42dc-a636-be7a350d2ed9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"81c5c6b842366305c1144c91df9a2a17"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"2114fab0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"2114fab0-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"2114fab0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c"} device-1 | {"level":"info","message":"GET /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6? 200 12ms","method":"GET","requestID":"4a13ddfa4c4e9947a9150e27f9382f7c","responseTime":12,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637?id=3b7ecd67-e6c5-4c54-80e0-70722faa2716","ws://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637?id=8563727e-6962-4318-9b6f-0933549a19f4"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.830856,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2dce2a80-54c6-412b-a5fc-7e728d8a0737","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.332892} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7654d364-e13e-4511-95dc-7d190783fc28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.3331206} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a'","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a'","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} 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":"21156fe0-86cf-11ef-b00e-2fb111b9dda5","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":"21156fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"211bd880-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3b7ecd67-e6c5-4c54-80e0-70722faa2716\" in room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\"","requestID":"211bd880-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"211bd880-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07bd6ba8a7911864bcae5eb9c22e4dfe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"211c26a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8563727e-6962-4318-9b6f-0933549a19f4\" in room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\"","requestID":"211c26a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"211c26a0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"07bd6ba8a7911864bcae5eb9c22e4dfe","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"}}},"level":"info","message":"received a callback","requestID":"07bd6ba8a7911864bcae5eb9c22e4dfe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"07bd6ba8a7911864bcae5eb9c22e4dfe","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"07bd6ba8a7911864bcae5eb9c22e4dfe"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"81c5c6b842366305c1144c91df9a2a17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"211ff730-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6afcc8d4-2ff4-4f45-9fbd-d61afd55c5dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.391908} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.416354,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"211ff730-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"211ff730-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"211ff730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling 200 10ms","method":"POST","requestID":"211ff730-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2121cbf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b460f53-f61f-4fe0-90d5-ac5e2a5e99aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.403463} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.040238,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2121cbf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2121cbf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2121cbf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling 200 10ms","method":"POST","requestID":"2121cbf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"245599d63b52cac045acd2896c746b8a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"245599d63b52cac045acd2896c746b8a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"}}},"level":"info","message":"received a callback","requestID":"245599d63b52cac045acd2896c746b8a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"21248b10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F009c58b0-1b33-49e6-8e8f-33cfd605b22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2696b232-155e-4805-ac8b-4d7aa9018e5b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.4219074} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.180793,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21248b10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a","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":"21248b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"21248b10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a 200 8ms","method":"GET","requestID":"21248b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"245599d63b52cac045acd2896c746b8a","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"245599d63b52cac045acd2896c746b8a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"212882b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"715e1a93-04b0-45dd-b32f-33b7520285bd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.4473696} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.207678,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"212882b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"212882b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"212882b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling 200 8ms","method":"POST","requestID":"212882b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"212a0950-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ad344fb-88f4-4a5f-a112-090e3f18277a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.4584222} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.932958,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"212a0950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"212a0950-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"212a0950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling 200 9ms","method":"POST","requestID":"212a0950-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.642284,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863"} experiment-1 | {"level":"info","message":"GET /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636 200 11ms","method":"GET","requestID":"b963e5ae46c5d8cfe7ffb51c1f44e863","responseTime":11,"status":200,"url":"/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"608e3601771c3bbf2d77d9c7730bb8bb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.649866,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"608e3601771c3bbf2d77d9c7730bb8bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"608e3601771c3bbf2d77d9c7730bb8bb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Attempting to finish experiment","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.658736,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8a4644d0-c214-45cb-b07b-6e66dd022637?id=3b7ecd67-e6c5-4c54-80e0-70722faa2716 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4c934bf19d795eccb1af3a0adb8cacde"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8a4644d0-c214-45cb-b07b-6e66dd022637?id=8563727e-6962-4318-9b6f-0933549a19f4 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fbc95f5203bc3f928f03d6414c7b70c8"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3b7ecd67-e6c5-4c54-80e0-70722faa2716\" in room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3b7ecd67-e6c5-4c54-80e0-70722faa2716\" from room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8563727e-6962-4318-9b6f-0933549a19f4\" in room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8563727e-6962-4318-9b6f-0933549a19f4\" from room \"http://localhost/rooms/8a4644d0-c214-45cb-b07b-6e66dd022637\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18be69a50082ecad183d97c487ec397c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F009c58b0-1b33-49e6-8e8f-33cfd605b22a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F009c58b0-1b33-49e6-8e8f-33cfd605b22a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"3dada5e5-30bd-4611-9a23-0aca1efef06e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.5085344} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"18be69a50082ecad183d97c487ec397c","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26fe447f-d9e9-4381-bfd0-477f0312f19d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.5088055} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6abf150767fe19f07ee2cfb82591205","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e6abf150767fe19f07ee2cfb82591205","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"}}},"level":"info","message":"received a callback","requestID":"18be69a50082ecad183d97c487ec397c"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"}}},"level":"info","message":"received a callback","requestID":"e6abf150767fe19f07ee2cfb82591205"} device-1 | {"data":{"peerconnection":"009c58b0-1b33-49e6-8e8f-33cfd605b22a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a 204 34ms","method":"DELETE","requestID":"21304ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":34,"status":204,"url":"/peerconnections/009c58b0-1b33-49e6-8e8f-33cfd605b22a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"},"level":"info","message":"Successfully finished experiment","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21388840-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8983f73d-7ac3-40bf-9d73-e061e21067a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"680dbc20-5406-44fe-95d9-d23d55435cd1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.552664} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.440594,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"21388840-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"21388840-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21388840-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling 200 11ms","method":"POST","requestID":"21388840-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/8983f73d-7ac3-40bf-9d73-e061e21067a6/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95fea870-98c0-44a2-b6fc-6f7f17584636': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F95fea870-98c0-44a2-b6fc-6f7f17584636","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"3785af5f-2c36-4c77-8975-0d7707cb9765","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.5613697} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"213aab20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a071c2b-3eda-4026-8bbc-5252a3070545","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.5622194} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"608e3601771c3bbf2d77d9c7730bb8bb","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04a2c58f-0b68-4016-88ed-a31f89c53101","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd22f378-d9ee-4050-8165-3a1994c3b684","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.5673394} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.207908,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"213aab20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"213aab20-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"213aab20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling 200 9ms","method":"POST","requestID":"213aab20-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/04a2c58f-0b68-4016-88ed-a31f89c53101/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"608e3601771c3bbf2d77d9c7730bb8bb"} experiment-1 | {"level":"info","message":"DELETE /experiments/95fea870-98c0-44a2-b6fc-6f7f17584636 204 149ms","method":"DELETE","requestID":"608e3601771c3bbf2d77d9c7730bb8bb","responseTime":149,"status":204,"url":"/experiments/95fea870-98c0-44a2-b6fc-6f7f17584636"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.560","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ee8e79529a3f3d0eee59718f91ef7b35"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.577","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"808c9ca8a003f03478221b70bfc4bad5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"18be69a50082ecad183d97c487ec397c","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"18be69a50082ecad183d97c487ec397c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"e6abf150767fe19f07ee2cfb82591205","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6abf150767fe19f07ee2cfb82591205"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"182f1c76dfb07244c5569a93207f4983"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"182f1c76dfb07244c5569a93207f4983","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"182f1c76dfb07244c5569a93207f4983"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/04a2c58f-0b68-4016-88ed-a31f89c53101' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.881421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"182f1c76dfb07244c5569a93207f4983","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","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/8983f73d-7ac3-40bf-9d73-e061e21067a6' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1826944c-f298-4d50-a7d7-f24197f82a98","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d1926991-ee59-44a5-8ae3-0d212c845164","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.666984} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a448cc7-6a30-47ba-99b6-7a46d440c595","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.6746633} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1826944c-f298-4d50-a7d7-f24197f82a98","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4478bfb0-3e89-46fc-adf2-2b8f5bf5dc31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.6845357} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fd686cc-4065-4a42-a57b-2622b722e3cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.6848493} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1826944c-f298-4d50-a7d7-f24197f82a98","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1826944c-f298-4d50-a7d7-f24197f82a98","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.684514226Z"}]},"request_id":"63243a79-c5a6-42eb-b254-c13b36d2aaa0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.6898928} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"182f1c76dfb07244c5569a93207f4983"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +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":"182f1c76dfb07244c5569a93207f4983"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"182f1c76dfb07244c5569a93207f4983","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"bef2e33e135e09984b798e223f2ba757"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bef2e33e135e09984b798e223f2ba757"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.999476,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bef2e33e135e09984b798e223f2ba757","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F391813cf-3ff4-4e1f-812d-983ceeafbeb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5f50bbcd-e134-4b98-a4a5-b2ffb718eff2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7168908} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7410eec4-7998-485f-9078-aff431873255","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7226279} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F391813cf-3ff4-4e1f-812d-983ceeafbeb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2c2b1380-ec8d-4319-a985-51b5d3f28bc3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.739803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1318a07-aca3-452a-893f-7a548aeb5e8a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7399044} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F391813cf-3ff4-4e1f-812d-983ceeafbeb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F391813cf-3ff4-4e1f-812d-983ceeafbeb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.739783553Z"}]},"request_id":"e112fac5-52a7-4bfa-a3a1-191da12dc805","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7455208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bef2e33e135e09984b798e223f2ba757"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bef2e33e135e09984b798e223f2ba757"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"bef2e33e135e09984b798e223f2ba757","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"bda04d539757e956019bbed19bcade24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bda04d539757e956019bbed19bcade24","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bda04d539757e956019bbed19bcade24"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.814269,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bda04d539757e956019bbed19bcade24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F12d25d85-31cd-48bc-9f57-ae9cbf598e86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f7ca3d10-0d9a-4d1d-a1dd-a4ebe42a6cf7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.773029} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0aeec1d4-8c2a-4a9c-8587-79370ecb5cb4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.778695} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F12d25d85-31cd-48bc-9f57-ae9cbf598e86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e11998d0-082c-48ff-a39a-c51d377528f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7889328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da6c214f-5f6f-4a7b-9c41-0dab4e0e749e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7889974} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F12d25d85-31cd-48bc-9f57-ae9cbf598e86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F12d25d85-31cd-48bc-9f57-ae9cbf598e86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.788909682Z"}]},"request_id":"699c9681-9198-40fc-9eec-ecf9857109ea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.7937424} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bda04d539757e956019bbed19bcade24"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bda04d539757e956019bbed19bcade24"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"bda04d539757e956019bbed19bcade24","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.66251,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76850a1c-07b8-4e23-866f-74469a1eb41f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"beb9c592-9be2-4d3d-a897-9a69cbda59c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8206303} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68739a51-4b92-42cf-b2c6-f19e01a0b65e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8265994} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76850a1c-07b8-4e23-866f-74469a1eb41f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"86485442-abe8-4b06-8834-bd40c124451c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8423085} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2f3a02c-4832-4e01-a40c-1c1eba40861b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8425283} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76850a1c-07b8-4e23-866f-74469a1eb41f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76850a1c-07b8-4e23-866f-74469a1eb41f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.842288912Z"}]},"request_id":"35cff07a-6465-46bc-9aef-5333d354d76f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8480914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"a3edb482e4d1cd8e7bad8d64cc25b414","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"b1c5f6b289672f5a6e3379369fc1db59"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1c5f6b289672f5a6e3379369fc1db59","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b1c5f6b289672f5a6e3379369fc1db59"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.803984,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b1c5f6b289672f5a6e3379369fc1db59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcdc351cc-ce50-4a56-8dd3-2c247f99d32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d44e7a1b-180a-422a-8723-b7d3fa316fdc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8779886} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf66509c-ab0e-4625-ad24-871a84440330","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8850377} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcdc351cc-ce50-4a56-8dd3-2c247f99d32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2a98ad8b-1b2f-4818-907d-cf36abbc29f1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.8982155} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35db6dfb-dfb4-441e-8e5b-3abf2a93195f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.898489} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcdc351cc-ce50-4a56-8dd3-2c247f99d32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcdc351cc-ce50-4a56-8dd3-2c247f99d32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.898192572Z"}]},"request_id":"aee7b126-f8fc-4b65-a36f-c3b24e14ad2b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9059567} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b1c5f6b289672f5a6e3379369fc1db59"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"b1c5f6b289672f5a6e3379369fc1db59","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1c5f6b289672f5a6e3379369fc1db59"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"f58041358971c4c2e346a225147a7eda"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f58041358971c4c2e346a225147a7eda","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f58041358971c4c2e346a225147a7eda"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.190546,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f58041358971c4c2e346a225147a7eda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbaa693-96b4-47f1-9f91-9e7f646a3e56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ae1c7355-8311-4c7f-a166-3a02013169f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9414194} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b603618-3e23-4aca-afc2-ec63e285ef26","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9476304} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbaa693-96b4-47f1-9f91-9e7f646a3e56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"44a97694-5271-44ce-8a9d-220ef8ace6ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9675226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11cd6305-09d7-4fab-a1de-c048751f42b4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9677062} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbaa693-96b4-47f1-9f91-9e7f646a3e56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cbaa693-96b4-47f1-9f91-9e7f646a3e56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:04.967498890Z"}]},"request_id":"579645a3-bb45-454c-8ee7-a4b069cb5c86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540964.9742432} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f58041358971c4c2e346a225147a7eda"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"f58041358971c4c2e346a225147a7eda","responseTime":59,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f58041358971c4c2e346a225147a7eda"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY","level":"info","message":"auth send jwt","requestID":"2c90335aaaa1670282b394ab5720210a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c90335aaaa1670282b394ab5720210a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2c90335aaaa1670282b394ab5720210a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.803363,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2c90335aaaa1670282b394ab5720210a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540964,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NH0.uSl5IqPg31i_qQKzvzHoMEdZ6ej8xamBqsyAA3CEjFY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff73c6e62-3f6e-4505-a1cd-f3c6c068baf6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9564ccdb-3fe6-4c3c-a7e9-52abdefa7603","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.006567} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67486a0e-9078-49d8-a2f6-657227d5c37c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.0131216} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff73c6e62-3f6e-4505-a1cd-f3c6c068baf6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"0d0c4032-d480-4880-802d-6d84c31be117","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.027232} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8fe61b55-8963-40d0-9574-a56b0feafa3e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.028131} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff73c6e62-3f6e-4505-a1cd-f3c6c068baf6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff73c6e62-3f6e-4505-a1cd-f3c6c068baf6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.027197087Z"}]},"request_id":"0e91bd39-91ab-446d-b722-f585d00cc06a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.0351582} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2c90335aaaa1670282b394ab5720210a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c90335aaaa1670282b394ab5720210a"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"2c90335aaaa1670282b394ab5720210a","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"a8135b8d20a093989a3f68c46f939af7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a8135b8d20a093989a3f68c46f939af7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a8135b8d20a093989a3f68c46f939af7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.193039,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a8135b8d20a093989a3f68c46f939af7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae8c3482-1d4c-4a19-a2e2-3fd98650f451","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ad000fc8-f2ec-47e8-9b29-b9ad76a6e548","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.067818} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a940aab2-97be-4705-a930-7f7774231cdc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.0747907} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae8c3482-1d4c-4a19-a2e2-3fd98650f451","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d32bbcf1-1586-4518-8b7f-bfdad0743881","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.0869842} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4978848d-bf8a-44ab-9ebb-e4bfe6a32ba0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.087435} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae8c3482-1d4c-4a19-a2e2-3fd98650f451","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae8c3482-1d4c-4a19-a2e2-3fd98650f451","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.086959413Z"}]},"request_id":"53a1794d-7539-4520-9c1c-9a2d8387e5fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.0935652} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a8135b8d20a093989a3f68c46f939af7"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"a8135b8d20a093989a3f68c46f939af7","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +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":"a8135b8d20a093989a3f68c46f939af7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"faf869eb3bcfaaa0971f414b8a08fce1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"faf869eb3bcfaaa0971f414b8a08fce1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.886671,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"faf869eb3bcfaaa0971f414b8a08fce1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe685cba6-fd02-43c7-9d53-841cdd4be0e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"03105e6c-3849-4de4-becb-b68d39e218f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.1329956} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b783aff9-e032-408c-ae77-2a2e72c208d4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.1418822} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe685cba6-fd02-43c7-9d53-841cdd4be0e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b0c2b809-c7e6-4b37-b350-7dc204725638","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.1554904} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f04a52b1-f523-4fc8-9f9a-d25cf2eee428","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.1560318} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe685cba6-fd02-43c7-9d53-841cdd4be0e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe685cba6-fd02-43c7-9d53-841cdd4be0e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.155453869Z"}]},"request_id":"b6038f52-2fe5-4c56-a607-b15047044b45","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.169386} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"faf869eb3bcfaaa0971f414b8a08fce1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +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":"faf869eb3bcfaaa0971f414b8a08fce1"} device-1 | {"level":"info","message":"POST /devices? 201 69ms","method":"POST","requestID":"faf869eb3bcfaaa0971f414b8a08fce1","responseTime":69,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.420374,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1cfdc296-161b-4aca-bef5-57080b5a26aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cb4c9fe0-a472-4b4b-95a6-f2f45127dcb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2067842} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"505e2359-b011-4c77-a9fd-f8b4c8e82d98","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2147977} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1cfdc296-161b-4aca-bef5-57080b5a26aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ba440412-26eb-4a2c-9782-ed0ce560a163","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.227674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53c9f290-a94c-4eaf-8ce6-87c1d9b3cf52","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2279992} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1cfdc296-161b-4aca-bef5-57080b5a26aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1cfdc296-161b-4aca-bef5-57080b5a26aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.227654265Z"}]},"request_id":"7a4dda83-0875-4299-9043-a723cc9fd1b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2347484} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"8efc3d1ea7bda633e3d91dc0aad6bc9c","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.229892,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b665385-f7e9-488f-ae40-9efcd85d950b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2812147} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d7b5d3f3-3178-40f2-b2f0-97b7f9c31cdf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.2887943} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"43354bcc-1121-4c14-9bda-cc19d4759e82","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.302947} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d61f844-ed35-4a35-85a5-87353f0c93a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.303386} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.302920652Z"}]},"request_id":"98ffc6f3-e603-4897-a758-0e07a650b98e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.309623} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.072","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"64df7f89ee5550de4bd9b3bd13b62bf2","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"a020beb7a228ee9554bbb3cf142df856"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a020beb7a228ee9554bbb3cf142df856","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a020beb7a228ee9554bbb3cf142df856"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.427876,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a020beb7a228ee9554bbb3cf142df856","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d06b8b8a-c5ae-4829-bf06-f9ebb29386ed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.3456485} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f73ed3f8-9031-443c-af60-19104318f6b0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.353892} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3a422944-7fce-43fe-aa48-8589250ce24d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.3643997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f30fdbbd-2227-4692-ac3a-5b1f2971ef6f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.3647473} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.364363284Z"}]},"request_id":"70fb67c2-20c4-4ad2-a308-34bea951cc7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.371783} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a020beb7a228ee9554bbb3cf142df856"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +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":"a020beb7a228ee9554bbb3cf142df856"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"a020beb7a228ee9554bbb3cf142df856","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"6b14fdd0b82f51791db96ebc0fc39629"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b14fdd0b82f51791db96ebc0fc39629","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b14fdd0b82f51791db96ebc0fc39629"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.979997,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6b14fdd0b82f51791db96ebc0fc39629","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e5e8e1e3-a9f9-4ba6-90bb-bf83f4785f00","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.410285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"996c2925-f68f-4cb4-ad98-f076bbf3dd0e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4180083} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"48de8ef1-3a71-498f-a8ee-ca1a39e28941","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4307885} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4dde53b-92ab-4d07-9405-f970b5aed394","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4310622} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.430773841Z"}]},"request_id":"422349f4-aee9-451d-95e4-98242928ce8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4377468} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b14fdd0b82f51791db96ebc0fc39629"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"6b14fdd0b82f51791db96ebc0fc39629","responseTime":58,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b14fdd0b82f51791db96ebc0fc39629"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"4b609b9c6b18b819819ea152ccfd05dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b609b9c6b18b819819ea152ccfd05dc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4b609b9c6b18b819819ea152ccfd05dc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.273233,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b609b9c6b18b819819ea152ccfd05dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b609b9c6b18b819819ea152ccfd05dc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.302920652Z"}]},"request_id":"fc956dfe-c0e4-4104-b74e-7f42f8ecf369","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4693658} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4b609b9c6b18b819819ea152ccfd05dc","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5b874fe-a2c5-4b4f-8b85-747d16cc5cc6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4774551} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4b609b9c6b18b819819ea152ccfd05dc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.302920652Z"}]},"request_id":"18d6ba68-ee6c-41d8-99b2-d876642bc332","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.4924643} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b609b9c6b18b819819ea152ccfd05dc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4b609b9c6b18b819819ea152ccfd05dc"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b609b9c6b18b819819ea152ccfd05dc"} device-1 | {"level":"info","message":"PATCH /devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0? 200 43ms","method":"PATCH","requestID":"4b609b9c6b18b819819ea152ccfd05dc","responseTime":43,"status":200,"url":"/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"5872767e22db70fcfba8ffd2031223b8"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"5872767e22db70fcfba8ffd2031223b8","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5872767e22db70fcfba8ffd2031223b8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124784,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5872767e22db70fcfba8ffd2031223b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5872767e22db70fcfba8ffd2031223b8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.364363284Z"}]},"request_id":"d2f9e6ce-7be0-4922-bc37-a6e5fc4a9247","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.522085} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5872767e22db70fcfba8ffd2031223b8","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"365c03a7-a4f9-4c4a-b564-2a062b2781de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.5306466} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"5872767e22db70fcfba8ffd2031223b8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.364363284Z"}]},"request_id":"a8d352eb-8607-436a-91fa-0f101eea9b0e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.5422902} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5872767e22db70fcfba8ffd2031223b8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5872767e22db70fcfba8ffd2031223b8"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/20970bfe-15ba-4f90-828a-d873a16c9c21? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5872767e22db70fcfba8ffd2031223b8"} device-1 | {"level":"info","message":"PATCH /devices/20970bfe-15ba-4f90-828a-d873a16c9c21? 200 38ms","method":"PATCH","requestID":"5872767e22db70fcfba8ffd2031223b8","responseTime":38,"status":200,"url":"/devices/20970bfe-15ba-4f90-828a-d873a16c9c21?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"69b69e5f855d2951eebc3f2719f65a0f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"69b69e5f855d2951eebc3f2719f65a0f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"69b69e5f855d2951eebc3f2719f65a0f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351523,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"69b69e5f855d2951eebc3f2719f65a0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69b69e5f855d2951eebc3f2719f65a0f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.430773841Z"}]},"request_id":"93e4ddb6-19f1-4823-925f-829bbc7d745f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.569338} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"69b69e5f855d2951eebc3f2719f65a0f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae8a6e7a-be4e-40e7-bde1-3e7af3c9803f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.576878} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"69b69e5f855d2951eebc3f2719f65a0f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.430773841Z"}]},"request_id":"5e5887e5-8deb-4d8a-92c3-2866284e93c9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.5884523} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"69b69e5f855d2951eebc3f2719f65a0f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"69b69e5f855d2951eebc3f2719f65a0f"} device-1 | {"level":"info","message":"PATCH /devices/a97e1f42-6090-4990-a724-f77a4aee5948? 200 38ms","method":"PATCH","requestID":"69b69e5f855d2951eebc3f2719f65a0f","responseTime":38,"status":200,"url":"/devices/a97e1f42-6090-4990-a724-f77a4aee5948?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a97e1f42-6090-4990-a724-f77a4aee5948? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"69b69e5f855d2951eebc3f2719f65a0f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"5183dea7a419daec3489d6a60f8b500f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5183dea7a419daec3489d6a60f8b500f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206131,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5183dea7a419daec3489d6a60f8b500f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.302920652Z"}]},"request_id":"96bfb98d-7b81-4382-8b56-11544d0ed43a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.613631} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141941,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2414,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172023,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1826944c-f298-4d50-a7d7-f24197f82a98","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5183dea7a419daec3489d6a60f8b500f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1826944c-f298-4d50-a7d7-f24197f82a98","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/391813cf-3ff4-4e1f-812d-983ceeafbeb0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5183dea7a419daec3489d6a60f8b500f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/391813cf-3ff4-4e1f-812d-983ceeafbeb0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/12d25d85-31cd-48bc-9f57-ae9cbf598e86","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5183dea7a419daec3489d6a60f8b500f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/12d25d85-31cd-48bc-9f57-ae9cbf598e86","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.492645,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5183dea7a419daec3489d6a60f8b500f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5183dea7a419daec3489d6a60f8b500f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5183dea7a419daec3489d6a60f8b500f"} device-1 | {"level":"info","message":"GET /devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0? 200 41ms","method":"GET","requestID":"5183dea7a419daec3489d6a60f8b500f","responseTime":41,"status":200,"url":"/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"87ace785a32687ecd0d606b4be243224"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"87ace785a32687ecd0d606b4be243224"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183283,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/20970bfe-15ba-4f90-828a-d873a16c9c21","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20970bfe-15ba-4f90-828a-d873a16c9c21","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.364363284Z"}]},"request_id":"050d9e21-8668-4390-bc17-4c61348ef866","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.6622183} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257514,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.476249,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.544137,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177381,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76850a1c-07b8-4e23-866f-74469a1eb41f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/76850a1c-07b8-4e23-866f-74469a1eb41f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cdc351cc-ce50-4a56-8dd3-2c247f99d32f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/cdc351cc-ce50-4a56-8dd3-2c247f99d32f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cbaa693-96b4-47f1-9f91-9e7f646a3e56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4cbaa693-96b4-47f1-9f91-9e7f646a3e56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f73c6e62-3f6e-4505-a1cd-f3c6c068baf6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f73c6e62-3f6e-4505-a1cd-f3c6c068baf6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37846","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37858","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37846","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.545687,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37858","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.935154,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87ace785a32687ecd0d606b4be243224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"87ace785a32687ecd0d606b4be243224"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/20970bfe-15ba-4f90-828a-d873a16c9c21? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87ace785a32687ecd0d606b4be243224"} device-1 | {"level":"info","message":"GET /devices/20970bfe-15ba-4f90-828a-d873a16c9c21? 200 54ms","method":"GET","requestID":"87ace785a32687ecd0d606b4be243224","responseTime":54,"status":200,"url":"/devices/20970bfe-15ba-4f90-828a-d873a16c9c21?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"f360ec92f795c5bd2c11ac10495a3f19"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f360ec92f795c5bd2c11ac10495a3f19"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313157,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f360ec92f795c5bd2c11ac10495a3f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a97e1f42-6090-4990-a724-f77a4aee5948","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa97e1f42-6090-4990-a724-f77a4aee5948","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.430773841Z"}]},"request_id":"3f2bc8bc-8b5c-498f-8033-c387e8c2cf9f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.7244961} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.079258,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977563,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37826","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988755,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae8c3482-1d4c-4a19-a2e2-3fd98650f451","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f360ec92f795c5bd2c11ac10495a3f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae8c3482-1d4c-4a19-a2e2-3fd98650f451","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e685cba6-fd02-43c7-9d53-841cdd4be0e5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f360ec92f795c5bd2c11ac10495a3f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e685cba6-fd02-43c7-9d53-841cdd4be0e5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1cfdc296-161b-4aca-bef5-57080b5a26aa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f360ec92f795c5bd2c11ac10495a3f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/1cfdc296-161b-4aca-bef5-57080b5a26aa","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37838","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.638659,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f360ec92f795c5bd2c11ac10495a3f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7e0e4bb0-a366-49f6-bf19-b40f96cb4fc0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f360ec92f795c5bd2c11ac10495a3f19"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a97e1f42-6090-4990-a724-f77a4aee5948? 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":"f360ec92f795c5bd2c11ac10495a3f19"} device-1 | {"level":"info","message":"GET /devices/a97e1f42-6090-4990-a724-f77a4aee5948? 200 43ms","method":"GET","requestID":"f360ec92f795c5bd2c11ac10495a3f19","responseTime":43,"status":200,"url":"/devices/a97e1f42-6090-4990-a724-f77a4aee5948?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.98478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5c3fec2f-b14b-4171-b56f-aeaaa4cfa2a5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.7885199} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6167605f-1ced-4a7a-bec1-6b4715ac8b30","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.7947466} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5caa0735-3c1a-4bcd-a8dc-5c8aef27959b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.804062} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd6bb423-2a0a-4f95-bfc5-8cb381a4a73d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.8046348} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"cd0040fc-893d-43a4-a901-12de9dbd58c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.809867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"ba416280fc15dd0ff9b4cd96e2b6ecc9","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.285736,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3c4d72ae-be15-4a25-b6af-62028b4d2d2c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.846631} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d787cd84-9e20-4165-addb-d1694db1bfbf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.8542216} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"30ff6146-dee7-469d-9f75-55f0e8fdc108","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.8668618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f89c5b8-1c97-4e42-baf7-ccb05812f859","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.8673456} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.866836224Z"}]},"request_id":"0372c58a-a085-4d4b-bdd2-11047eef07e2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.8747978} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d","responseTime":60,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f040a2df8e9f5e4d4ceb6e3c4f3e79d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro","level":"info","message":"auth send jwt","requestID":"e34210372547417e0b1e2cbe78887ee7"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e34210372547417e0b1e2cbe78887ee7","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e34210372547417e0b1e2cbe78887ee7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.241346,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e34210372547417e0b1e2cbe78887ee7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540965,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2NX0.ehA9m1IbPJn7svnyjw8TvPkXTSma0No2JZQbPL5kLro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cc814407-d663-45d8-b639-fe75cb8d9c65","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.9141908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a78dfc5d-f58d-4b66-9eaf-1ab15e05f68f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.9213889} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4c4921b0-8221-441e-a9c2-bf2586d82aad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.9343605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c84788a6-8feb-4eb1-888c-597f03388782","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.9346673} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"a0368ccf-4d75-4acd-a624-7f357e0b601b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540965.9419022} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e34210372547417e0b1e2cbe78887ee7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e34210372547417e0b1e2cbe78887ee7"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"e34210372547417e0b1e2cbe78887ee7","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4402701f9d43316d7b2e3bc2a76814be","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4402701f9d43316d7b2e3bc2a76814be","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/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":"4402701f9d43316d7b2e3bc2a76814be"} device-1 | {"level":"info","message":"OPTIONS /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/websocket 200 0ms","method":"OPTIONS","requestID":"4402701f9d43316d7b2e3bc2a76814be","responseTime":0,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da68665a1d0bfc6539dc77a398f3f06b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da68665a1d0bfc6539dc77a398f3f06b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/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":"da68665a1d0bfc6539dc77a398f3f06b"} device-1 | {"level":"info","message":"OPTIONS /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/websocket 200 1ms","method":"OPTIONS","requestID":"da68665a1d0bfc6539dc77a398f3f06b","responseTime":1,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2N30.riivXSNpVCN6gpNsry94p6F_jAWq5aUYghMIRlp7gGU","level":"info","message":"auth send jwt","requestID":"c738965ee282db0bf38baf4a1e0792cd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c738965ee282db0bf38baf4a1e0792cd","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c738965ee282db0bf38baf4a1e0792cd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:07Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2N30.riivXSNpVCN6gpNsry94p6F_jAWq5aUYghMIRlp7gGU","level":"info","message":"auth send jwt","requestID":"8a1940578fe3773fce47167d7d6094d8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.618887,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:07Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8a1940578fe3773fce47167d7d6094d8","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c738965ee282db0bf38baf4a1e0792cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540967,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2N30.riivXSNpVCN6gpNsry94p6F_jAWq5aUYghMIRlp7gGU"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8a1940578fe3773fce47167d7d6094d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c738965ee282db0bf38baf4a1e0792cd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.501721,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8a1940578fe3773fce47167d7d6094d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540967,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2N30.riivXSNpVCN6gpNsry94p6F_jAWq5aUYghMIRlp7gGU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a1940578fe3773fce47167d7d6094d8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c738965ee282db0bf38baf4a1e0792cd"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/websocket 200 25ms","method":"POST","requestID":"c738965ee282db0bf38baf4a1e0792cd","responseTime":25,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/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":"c738965ee282db0bf38baf4a1e0792cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8a1940578fe3773fce47167d7d6094d8"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/websocket 200 32ms","method":"POST","requestID":"8a1940578fe3773fce47167d7d6094d8","responseTime":32,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8a1940578fe3773fce47167d7d6094d8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83c1f8d7adc657d8923293776891585e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"83c1f8d7adc657d8923293776891585e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"83c1f8d7adc657d8923293776891585e"} device-1 | {"level":"info","message":"OPTIONS /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? 200 1ms","method":"OPTIONS","requestID":"83c1f8d7adc657d8923293776891585e","responseTime":1,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fd3438d425ccfbe303e8b13e6476510","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7fd3438d425ccfbe303e8b13e6476510","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7fd3438d425ccfbe303e8b13e6476510"} device-1 | {"level":"info","message":"OPTIONS /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 1ms","method":"OPTIONS","requestID":"7fd3438d425ccfbe303e8b13e6476510","responseTime":1,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"5c035d50ce7f197bea7eea572c7901b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5c035d50ce7f197bea7eea572c7901b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c035d50ce7f197bea7eea572c7901b1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"c511e59795e65f292ab80892f9559039"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c511e59795e65f292ab80892f9559039"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c511e59795e65f292ab80892f9559039","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918078,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5c035d50ce7f197bea7eea572c7901b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c035d50ce7f197bea7eea572c7901b1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752801,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c511e59795e65f292ab80892f9559039","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c511e59795e65f292ab80892f9559039","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"6655c436-cbc7-4ce8-8790-a7c6d8c9a9bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0454223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c035d50ce7f197bea7eea572c7901b1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"ef9bba55-7632-4760-8fd6-0101c222e985","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0488043} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c511e59795e65f292ab80892f9559039","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a8065f12-9728-4593-a4c5-fb7f72363bfd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0510814} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5c035d50ce7f197bea7eea572c7901b1","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05aa3307-11c5-45a2-8c16-4a817a474834","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0551836} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c511e59795e65f292ab80892f9559039","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"822ab1b3-861b-48b7-b606-d6f6a4b2f6ac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0666707} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c035d50ce7f197bea7eea572c7901b1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c035d50ce7f197bea7eea572c7901b1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? HTTP/1.1","status": "200","body_bytes_sent":"845","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":"5c035d50ce7f197bea7eea572c7901b1"} device-1 | {"level":"info","message":"PATCH /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? 200 35ms","method":"PATCH","requestID":"5c035d50ce7f197bea7eea572c7901b1","responseTime":35,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"00e2b4c1-52d9-478f-aff6-ef4ac505833b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0769725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c511e59795e65f292ab80892f9559039","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c511e59795e65f292ab80892f9559039"} device-1 | {"level":"info","message":"PATCH /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 41ms","method":"PATCH","requestID":"c511e59795e65f292ab80892f9559039","responseTime":41,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c511e59795e65f292ab80892f9559039"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"359e1a77622e8dce96cdd57ebc40fe6f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"359e1a77622e8dce96cdd57ebc40fe6f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"359e1a77622e8dce96cdd57ebc40fe6f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.039832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"359e1a77622e8dce96cdd57ebc40fe6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"359e1a77622e8dce96cdd57ebc40fe6f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"5a2af968-a249-4cd2-872f-17b5a95df5d1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.0997822} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"359e1a77622e8dce96cdd57ebc40fe6f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"359e1a77622e8dce96cdd57ebc40fe6f"} device-1 | {"level":"info","message":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 11ms","method":"GET","requestID":"359e1a77622e8dce96cdd57ebc40fe6f","responseTime":11,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"359e1a77622e8dce96cdd57ebc40fe6f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"da6fcf245621d15eef4b3849774063ee"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"da6fcf245621d15eef4b3849774063ee","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"da6fcf245621d15eef4b3849774063ee"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.109996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"da6fcf245621d15eef4b3849774063ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da6fcf245621d15eef4b3849774063ee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to run experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to book experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully booked experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619188,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693663,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.866836224Z"}]},"request_id":"ffc92b85-b816-40a7-a456-3c8cc2818e25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.161105} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"0af9f199-e82d-41e4-a0e1-da8826be4bc2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.161868} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 16ms","method":"GET","requestID":"235ec3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696229,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6? 200 23ms","method":"GET","requestID":"235e7580-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/68c8a0ad-9fd6-4f98-b273-17ccbeaa56a6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Setting up experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully set up experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"236a5c60-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully running experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.381399,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240698,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"540b11e4-c42a-4d4e-9ee2-45f17f1c7ab6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.240123} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.701573,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"236a5c60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","rebac_allow":false,"scope_allow":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":"236a5c60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"b4182197-3b1f-465c-b21d-75a75219b8b0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.244177} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"236a5c60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling 200 20ms","method":"POST","requestID":"236a5c60-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"e2afd75f-55b5-4691-b718-2a5297cf306d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.2490425} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"236e05e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? 200 35ms","method":"GET","requestID":"23697200-86cf-11ef-b00e-2fb111b9dda5","responseTime":35,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} device-1 | {"level":"info","message":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 33ms","method":"GET","requestID":"2369e730-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a69eb966-997e-416c-b3fd-54e2416eef24","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.2603624} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F389ad77e-116e-466f-9408-26f1a4b8b95a#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F389ad77e-116e-466f-9408-26f1a4b8b95a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"252f48a7-2d80-40ca-b591-3bab455e5080","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.2603874} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.690236,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"236e05e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","rebac_allow":false,"scope_allow":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":"236e05e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"236f8c80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f95ed32-ffe4-47ce-a7bd-3f105f7864e1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.261813} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"da6fcf245621d15eef4b3849774063ee","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"236e05e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling 200 15ms","method":"POST","requestID":"236e05e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"511c7606-4820-4a88-9c95-ca8a5bceadca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.2701042} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.824916,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"236f8c80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"236f8c80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"da6fcf245621d15eef4b3849774063ee"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"da6fcf245621d15eef4b3849774063ee","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"236f8c80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling 200 12ms","method":"POST","requestID":"236f8c80-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2371d670-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a04140c-b22e-4732-8677-0f40812cb62d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.2862797} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.025321,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.038772,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2371d670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","rebac_allow":false,"scope_allow":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":"2371d670-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"cfb4abd8-f3e9-4950-b3c1-f75cf77dd884","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.291576} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2371d670-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling 200 13ms","method":"POST","requestID":"2371d670-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f"} device-1 | {"level":"info","message":"GET /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? 200 17ms","method":"GET","requestID":"3a5ead2d131b7fa284e4f20bd9db7b3f","responseTime":17,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.860609,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846774,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"71986b8376fe2ec1eff6bf611e8a4a84"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71986b8376fe2ec1eff6bf611e8a4a84","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71986b8376fe2ec1eff6bf611e8a4a84"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.804039267Z"}]},"request_id":"baca6fd1-3137-4e15-b061-653aa67c5570","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3064315} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"54441428-4066-4548-bc78-8f6a79604e9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3081849} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660562,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} device-1 | {"level":"info","message":"GET /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01? 200 15ms","method":"GET","requestID":"23746e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"71986b8376fe2ec1eff6bf611e8a4a84","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71986b8376fe2ec1eff6bf611e8a4a84","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 18ms","method":"GET","requestID":"23749590-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:05.934324036Z"}]},"request_id":"294a24f7-ea61-4636-8b2c-9e58ff99c363","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3158104} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Building connection plan","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"3090d126-9112-46f7-b42f-615405609694"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"b0c5ce01-b265-4611-aff9-6d9ce4af57a3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"edd8ed95-97bd-4073-b121-8e119c70dcf6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"da6fcf245621d15eef4b3849774063ee"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"da6fcf245621d15eef4b3849774063ee"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71986b8376fe2ec1eff6bf611e8a4a84","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71986b8376fe2ec1eff6bf611e8a4a84"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71986b8376fe2ec1eff6bf611e8a4a84"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} device-1 | {"level":"info","message":"GET /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937? 200 15ms","method":"GET","requestID":"71986b8376fe2ec1eff6bf611e8a4a84","responseTime":15,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.738369,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f50e0585-ffa0-4ace-9c34-cd2c3adcbdfc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.330896} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8109b1c-a700-4d20-ad0d-3b36ed82b373","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3311741} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564'","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564'","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} 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":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5","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":"2377f0f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"da6fcf245621d15eef4b3849774063ee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"237fb920-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7141b606-f305-43cb-801b-6db05510675a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3748548} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.628608,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"237fb920-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"237fb920-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"237fb920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling 200 9ms","method":"POST","requestID":"237fb920-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"238166d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1032cac7-15b2-45ed-992e-22883359c29f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.3854513} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.165841,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"238166d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"238166d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"238166d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling 200 8ms","method":"POST","requestID":"238166d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling"} device-1 | {"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3708319628446662168 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:EH1G\r\na=ice-pwd:WSPIIwmEHwC7wq4wRxm+TsYB\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D2:52:BF:41:68:46:48:92:EF:F1:FE:73:3F:AF:FD:47:0A:27:21:F9:B5:11:73:6F:F9:41:B0:90:A1:57:8E: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":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2232829381330633568 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:w1Qp\r\na=ice-pwd:+DWTmEwNp20/uwktdgeK8Qsc\r\na=ice-options:trickle\r\na=fingerprint:sha-256 61:E4:6A:B8:3B:5B:C9:A0:16:08:13:67:C4:78:80:0C:86:42:2D:ED:C5:40:6F:34:D6:AF:CF:67:FC:1A:03:EA\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:762381389 1 udp 2113937151 ef0c5d45-05c7-4bf2-9882-733f01c25e80.local 56660 typ host generation 0 ufrag w1Qp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3193611614 1 udp 1677729535 141.24.211.56 56660 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag w1Qp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","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/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937'"} device-1 | {"content":{"candidate":"candidate:813283616 1 udp 2113937151 b6f40c57-34ac-466e-9963-5dc012e323e4.local 34649 typ host generation 0 ufrag EH1G network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2740066355 1 udp 1677729535 141.24.211.56 34649 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag EH1G network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","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/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01'"} device-1 | {"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","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/11c586f0-3a43-4605-a16e-555894271564' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9d9885153e975bd75301ec293ea5340","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c9d9885153e975bd75301ec293ea5340","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564"}}},"level":"info","message":"received a callback","requestID":"c9d9885153e975bd75301ec293ea5340"} device-1 | {"device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"c9d9885153e975bd75301ec293ea5340","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"c9d9885153e975bd75301ec293ea5340"} device-1 | {"device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","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/11c586f0-3a43-4605-a16e-555894271564' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb369586887cc22552f2cd82c97d241e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb369586887cc22552f2cd82c97d241e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564"}}},"level":"info","message":"received a callback","requestID":"cb369586887cc22552f2cd82c97d241e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2390a910-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11c586f0-3a43-4605-a16e-555894271564","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e82cc24-a169-492c-b80c-d091239c5e35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.4859743} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.165073,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2390a910-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","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":"2390a910-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2390a910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/11c586f0-3a43-4605-a16e-555894271564 200 8ms","method":"GET","requestID":"2390a910-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/11c586f0-3a43-4605-a16e-555894271564"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"cb369586887cc22552f2cd82c97d241e","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"cb369586887cc22552f2cd82c97d241e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23956400-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0b5b909-7549-4016-a621-1a702963c95a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.5166347} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.605566,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23956400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23956400-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23956400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling 200 10ms","method":"POST","requestID":"23956400-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23975fd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b30448d2-d0bb-4b1e-ae18-a4a2612ef73c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.5308692} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.644514,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23975fd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23975fd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23975fd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling 200 9ms","method":"POST","requestID":"23975fd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.669335,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9"} experiment-1 | {"level":"info","message":"GET /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a 200 10ms","method":"GET","requestID":"71f4ef4c2372fbf6d2277b0fcaeb6ab9","responseTime":10,"status":200,"url":"/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"e862ed942db14f284083aafc78a131f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e862ed942db14f284083aafc78a131f3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","requestID":"e862ed942db14f284083aafc78a131f3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702551,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e862ed942db14f284083aafc78a131f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e862ed942db14f284083aafc78a131f3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Attempting to finish experiment","requestID":"e862ed942db14f284083aafc78a131f3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.71475,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","device":"b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564","device":"ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","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/11c586f0-3a43-4605-a16e-555894271564' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11c586f0-3a43-4605-a16e-555894271564': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11c586f0-3a43-4605-a16e-555894271564","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d61a757b-2804-46f9-b026-ead0c5f2e083","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.5843754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e499ef83-011f-410d-b387-3b8cdb85e654","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.5845702} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"24baca4a1e4c9b2b0ab67b168a0a764c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"24baca4a1e4c9b2b0ab67b168a0a764c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3292ff81413d82204d721215c07a1e10","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564"}}},"level":"info","message":"received a callback","requestID":"24baca4a1e4c9b2b0ab67b168a0a764c"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3292ff81413d82204d721215c07a1e10","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11c586f0-3a43-4605-a16e-555894271564"}}},"level":"info","message":"received a callback","requestID":"3292ff81413d82204d721215c07a1e10"} device-1 | {"data":{"peerconnection":"11c586f0-3a43-4605-a16e-555894271564","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/11c586f0-3a43-4605-a16e-555894271564 204 38ms","method":"DELETE","requestID":"239def80-86cf-11ef-b00e-2fb111b9dda5","responseTime":38,"status":204,"url":"/peerconnections/11c586f0-3a43-4605-a16e-555894271564"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"},"level":"info","message":"Successfully finished experiment","requestID":"e862ed942db14f284083aafc78a131f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23a67b00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e97a1c08-c3dd-434c-9a65-d7e095ba8452","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.6285756} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.135333,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23a67b00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23a67b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23a67b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling 200 9ms","method":"POST","requestID":"23a67b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F389ad77e-116e-466f-9408-26f1a4b8b95a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F389ad77e-116e-466f-9408-26f1a4b8b95a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"77a733f2-5f7d-4ff0-95f1-2dfc6695fcf3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.6361735} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2dc52f0-7a12-4c46-969d-5f653d749424","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.636365} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23a84fc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e862ed942db14f284083aafc78a131f3","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae9a6a4b-27f6-425f-ad06-cfa95b76fb01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9bf12bd-28cd-4946-b848-90f00961cd96","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.6409202} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342319,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23a84fc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23a84fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23a84fc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling 200 9ms","method":"POST","requestID":"23a84fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a","requestID":"e862ed942db14f284083aafc78a131f3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e862ed942db14f284083aafc78a131f3"} experiment-1 | {"level":"info","message":"DELETE /experiments/389ad77e-116e-466f-9408-26f1a4b8b95a 204 140ms","method":"DELETE","requestID":"e862ed942db14f284083aafc78a131f3","responseTime":140,"status":204,"url":"/experiments/389ad77e-116e-466f-9408-26f1a4b8b95a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"24baca4a1e4c9b2b0ab67b168a0a764c","responseTime":114,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"3292ff81413d82204d721215c07a1e10","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"24baca4a1e4c9b2b0ab67b168a0a764c"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"3292ff81413d82204d721215c07a1e10"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"012af54109f8712d45c1f6e8f3ba4001"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"012af54109f8712d45c1f6e8f3ba4001","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"012af54109f8712d45c1f6e8f3ba4001"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"0.704","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cca605c72556dab11b3ce9545838a578"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.054058,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"0.717","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"391a2e88dcd725305008c1a485831cd3"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"012af54109f8712d45c1f6e8f3ba4001","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","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/ae9a6a4b-27f6-425f-ad06-cfa95b76fb01' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b27e4ed0-9cb8-487d-a2d4-5c3f86e4b937' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e001feaa-e4b5-4558-96f9-a8255266287c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7253926} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94f4cd53-a023-48d4-b8fc-5fa18820ecb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7292757} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"22548a4d-844a-4fdf-a8ed-28696fd422c6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.740629} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b323177-742f-4fb1-a66f-aa80148a8c93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7409134} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"f94f4ef8-5cae-42b4-8c13-4fea41bcfea0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7443852} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"012af54109f8712d45c1f6e8f3ba4001"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"012af54109f8712d45c1f6e8f3ba4001"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"012af54109f8712d45c1f6e8f3ba4001","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs","level":"info","message":"auth send jwt","requestID":"270404018fa264e7533d19196818671e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"270404018fa264e7533d19196818671e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"270404018fa264e7533d19196818671e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754551,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"270404018fa264e7533d19196818671e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540968,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OH0.Z0GTUB09KmOHSd45fYXaCgUk4fLMk5Z0nXVktElInHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1ec5e339-e0f0-4968-a7ca-cdded904dee9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.767463} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a87ab96-2295-4114-8d20-db43cef62567","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7718463} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"90fdd58a-b702-434e-91b0-e225c4a8f210","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7820883} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28c06fc8-5448-48bf-a1fe-0006d5d3a2b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7822828} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"c365996c-d9b0-466e-b9a2-996a58eba2fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540968.7858527} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"270404018fa264e7533d19196818671e"} gateway-1 | {"time_local":"10/Oct/2024:06:16:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"270404018fa264e7533d19196818671e"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"270404018fa264e7533d19196818671e","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OX0.CS3ynSgUa1Yfq4ek9fnlj8HwFtyrSDcK8fR-5b6oJzI","level":"info","message":"auth send jwt","requestID":"04a4464ff0a4148765fb17e84b9ec231"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04a4464ff0a4148765fb17e84b9ec231","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"04a4464ff0a4148765fb17e84b9ec231"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.41891,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"04a4464ff0a4148765fb17e84b9ec231","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540969,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OX0.CS3ynSgUa1Yfq4ek9fnlj8HwFtyrSDcK8fR-5b6oJzI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"04a4464ff0a4148765fb17e84b9ec231","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"c0e468cf-1a47-4cc0-90f2-3ff9b1094461","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540969.2723632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04a4464ff0a4148765fb17e84b9ec231","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"790153a0-a8d2-456e-b581-bc44f1b51f0d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540969.2776968} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"04a4464ff0a4148765fb17e84b9ec231","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"03221da8-1962-453b-b373-5bcfa0d55eda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540969.2893968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04a4464ff0a4148765fb17e84b9ec231","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"04a4464ff0a4148765fb17e84b9ec231"} device-1 | {"level":"info","message":"PATCH /devices/39661ecf-f27c-4cfa-9076-18dd828667e9 200 29ms","method":"PATCH","requestID":"04a4464ff0a4148765fb17e84b9ec231","responseTime":29,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/39661ecf-f27c-4cfa-9076-18dd828667e9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"04a4464ff0a4148765fb17e84b9ec231"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OX0.CS3ynSgUa1Yfq4ek9fnlj8HwFtyrSDcK8fR-5b6oJzI","level":"info","message":"auth send jwt","requestID":"74e32a35c2af779fe037269231212563"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74e32a35c2af779fe037269231212563","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"74e32a35c2af779fe037269231212563"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147412,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"74e32a35c2af779fe037269231212563","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540969,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk2OX0.CS3ynSgUa1Yfq4ek9fnlj8HwFtyrSDcK8fR-5b6oJzI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"74e32a35c2af779fe037269231212563","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"74e32a35c2af779fe037269231212563"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/websocket 200 17ms","method":"POST","requestID":"74e32a35c2af779fe037269231212563","responseTime":17,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"74e32a35c2af779fe037269231212563"} device-1 | {"level":"info","message":"device 'http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41f6b2687576e85218d9ae645ab37f59","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"41f6b2687576e85218d9ae645ab37f59","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9ef61959-6786-4213-a4f2-69daaf462e40/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":"41f6b2687576e85218d9ae645ab37f59"} device-1 | {"level":"info","message":"OPTIONS /devices/9ef61959-6786-4213-a4f2-69daaf462e40/websocket 200 1ms","method":"OPTIONS","requestID":"41f6b2687576e85218d9ae645ab37f59","responseTime":1,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ","level":"info","message":"auth send jwt","requestID":"32ea5f690a1b78b718fdb604400bb435"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"32ea5f690a1b78b718fdb604400bb435","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"32ea5f690a1b78b718fdb604400bb435"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161993,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"32ea5f690a1b78b718fdb604400bb435","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540970,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"32ea5f690a1b78b718fdb604400bb435","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"32ea5f690a1b78b718fdb604400bb435"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/websocket 200 24ms","method":"POST","requestID":"32ea5f690a1b78b718fdb604400bb435","responseTime":24,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/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":"32ea5f690a1b78b718fdb604400bb435"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e3286fc71b707a8ddc777bc08c0325c9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e3286fc71b707a8ddc777bc08c0325c9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9ef61959-6786-4213-a4f2-69daaf462e40? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e3286fc71b707a8ddc777bc08c0325c9"} device-1 | {"level":"info","message":"OPTIONS /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 1ms","method":"OPTIONS","requestID":"e3286fc71b707a8ddc777bc08c0325c9","responseTime":1,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ","level":"info","message":"auth send jwt","requestID":"cea6c3da08780a3adf49af9a63210e3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cea6c3da08780a3adf49af9a63210e3f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cea6c3da08780a3adf49af9a63210e3f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276051,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cea6c3da08780a3adf49af9a63210e3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540970,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cea6c3da08780a3adf49af9a63210e3f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"3fb64357-c2f8-4ce6-a2d9-72b79f4d488d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540970.9035957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cea6c3da08780a3adf49af9a63210e3f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57ccc6a7-4e1d-4e26-ab17-cf602ecfcf78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540970.911396} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"cea6c3da08780a3adf49af9a63210e3f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"b21df983-f2d3-4f47-b8fe-14d2bc945c9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540970.9262874} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cea6c3da08780a3adf49af9a63210e3f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cea6c3da08780a3adf49af9a63210e3f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9ef61959-6786-4213-a4f2-69daaf462e40? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cea6c3da08780a3adf49af9a63210e3f"} device-1 | {"level":"info","message":"PATCH /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 42ms","method":"PATCH","requestID":"cea6c3da08780a3adf49af9a63210e3f","responseTime":42,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ","level":"info","message":"auth send jwt","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.820906,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540970,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"54e7e5a6-a014-41ea-ab73-8626b1cd147e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540970.9580448} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2"} device-1 | {"level":"info","message":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? 200 24ms","method":"GET","requestID":"4c41a412048e6a72d1cd79fa7e8a9dd2","responseTime":24,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ","level":"info","message":"auth send jwt","requestID":"fbb9a4fbbb052743faf7a689e6b98901"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fbb9a4fbbb052743faf7a689e6b98901","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbb9a4fbbb052743faf7a689e6b98901"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211487,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fbb9a4fbbb052743faf7a689e6b98901","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540970,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MH0.KkVODXvAWm3t2mUH1iMyUXqyWlrd7kaIlaIPFGMd7RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fbb9a4fbbb052743faf7a689e6b98901","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"77386f93-516e-41b5-b0aa-5bb329dd5ce5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540970.9884663} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fbb9a4fbbb052743faf7a689e6b98901","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbb9a4fbbb052743faf7a689e6b98901"} gateway-1 | {"time_local":"10/Oct/2024:06:16:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbb9a4fbbb052743faf7a689e6b98901"} device-1 | {"level":"info","message":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 20ms","method":"GET","requestID":"fbb9a4fbbb052743faf7a689e6b98901","responseTime":20,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o","level":"info","message":"auth send jwt","requestID":"ae89f5ad1cd6993138261f823f81acea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae89f5ad1cd6993138261f823f81acea","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ae89f5ad1cd6993138261f823f81acea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.212405,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ae89f5ad1cd6993138261f823f81acea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae89f5ad1cd6993138261f823f81acea","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to run experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to book experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully booked experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.317069,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299823,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"baab6159-d5f8-42db-978d-1cbe4a48a7c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.0695038} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"0a919a78-9b7d-4297-a347-2f0c4b3dc781","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.071482} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? 200 25ms","method":"GET","requestID":"25196bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 24ms","method":"GET","requestID":"2519ba10-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Setting up experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully set up experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252775b0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully running experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.027743,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.859652,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"0c731074-2371-4884-9e6e-5d281af7672f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.163254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"458ff766-261c-4b38-9043-a89653a44108","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.1658087} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37862","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6b205ca-d566-43d1-8dca-f4a54504c7a4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.1726983} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:37862","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.077104,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} device-1 | {"level":"info","message":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? 200 31ms","method":"GET","requestID":"25270080-86cf-11ef-b00e-2fb111b9dda5","responseTime":31,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"252775b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"252775b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 30ms","method":"GET","requestID":"25274ea0-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252c7ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252775b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling 200 36ms","method":"POST","requestID":"252775b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52f195ba-97b5-4298-ad8d-f6b6b8e57108#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52f195ba-97b5-4298-ad8d-f6b6b8e57108","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"675fa10d-28c9-4d90-96f7-92e8d05b36f2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.1796534} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51e6523c-4a67-45bd-bf4c-58bf17650a81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.1803405} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252d4210-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"ae89f5ad1cd6993138261f823f81acea","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36ca5f08-f08b-4072-8e5a-c7110023a42e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.1904004} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.438509,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18f83f23-f198-43c0-9496-628b2108ed77","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.191083} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"252c7ec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"252c7ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188337,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ae89f5ad1cd6993138261f823f81acea"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"252d4210-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 187ms","method":"POST","requestID":"ae89f5ad1cd6993138261f823f81acea","responseTime":187,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"252d4210-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252c7ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling 200 18ms","method":"POST","requestID":"252c7ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252d4210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling 200 13ms","method":"POST","requestID":"252d4210-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o","level":"info","message":"auth send jwt","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252fda20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.088751,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ade1145-464a-44cf-bbda-9a5912557154","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.207858} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.733224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"252fda20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"252fda20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"34f0485a-5f43-4a01-bae5-3d99c78b4ff3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.2102273} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252fda20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling 200 12ms","method":"POST","requestID":"252fda20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a"} device-1 | {"level":"info","message":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? 200 15ms","method":"GET","requestID":"1233503c9b7b99dafea3a6bc8a6d2f7a","responseTime":15,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o","level":"info","message":"auth send jwt","requestID":"5f44c244acd978f417b33424ff58f873"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5f44c244acd978f417b33424ff58f873","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.037267,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f44c244acd978f417b33424ff58f873"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40936","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806287,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5f44c244acd978f417b33424ff58f873","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f44c244acd978f417b33424ff58f873","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.740601529Z"}]},"request_id":"d733bba0-f0f5-4e46-aa4e-a87e538fee55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.225519} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"165589b9-69cb-4b12-b4f2-9cd97bfb7813","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.2264242} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:08.782066375Z"}]},"request_id":"71c2e825-f035-413b-b589-00c52ad9fb4c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.2301116} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f44c244acd978f417b33424ff58f873","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/39661ecf-f27c-4cfa-9076-18dd828667e9? 200 16ms","method":"GET","requestID":"25322410-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 16ms","method":"GET","requestID":"25324b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f44c244acd978f417b33424ff58f873"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Building connection plan","requestID":"ae89f5ad1cd6993138261f823f81acea"} gateway-1 | {"time_local":"10/Oct/2024:06:16:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f44c244acd978f417b33424ff58f873"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"51a15e12-0da4-4b09-a5eb-6af57b2046fa"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"4f7ab227-6ac2-43a7-a0aa-8994ff57960b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a52a1331-09d3-4309-bf3f-001ba0966146"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"GET /devices/9ef61959-6786-4213-a4f2-69daaf462e40? 200 16ms","method":"GET","requestID":"5f44c244acd978f417b33424ff58f873","responseTime":16,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.961799,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540971,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3MX0.l1uRCPhhWSYv2XmyjCeSf3mw50R6cFt_e1KiYBe6d3o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3f2f4311-fe9a-40f7-be16-f1ecc245c584","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.2500708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc9656a2-b0f0-4936-8234-45adeb65159c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.250444} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed'","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed'","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"25355860-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ae89f5ad1cd6993138261f823f81acea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"253dbcd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffa39635-2e73-451c-b41b-1cce41160ae4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.2976837} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.371067,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"253dbcd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"253dbcd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"253dbcd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling 200 8ms","method":"POST","requestID":"253dbcd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"253f4370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec5c41af-92bd-4ff8-81bc-4735564bb3a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540971.3072598} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.080565,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"253f4370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"253f4370-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"253f4370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling 200 8ms","method":"POST","requestID":"253f4370-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling"} device-1 | {"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7571127176127488596 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:SHBC\r\na=ice-pwd:yNG09R6zhodCBfQPzCPtM3UO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7C:32:5D:B8:F6:D5:A7:3E:C1:95:5D:5E:54:6E:3A:54:CC:68:3C:6F:13:1B:89:91:13:BA:D7:F2:80:AA:19:5C\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:956146932 1 udp 2113937151 dcf82b57-c2c5-4394-80b2-e32eecf979f8.local 60809 typ host generation 0 ufrag SHBC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3167800971 1 udp 1677729535 141.24.211.56 60809 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag SHBC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9ef61959-6786-4213-a4f2-69daaf462e40","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/abc57ad3-5cfa-4cdb-9cef-9566fac95bed' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"652ac0740c8907ba96aa221299113f2c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/9ef61959-6786-4213-a4f2-69daaf462e40'"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"652ac0740c8907ba96aa221299113f2c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"}}},"level":"info","message":"received a callback","requestID":"652ac0740c8907ba96aa221299113f2c"} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"652ac0740c8907ba96aa221299113f2c","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch","requestID":"652ac0740c8907ba96aa221299113f2c"} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9ef61959-6786-4213-a4f2-69daaf462e40","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/abc57ad3-5cfa-4cdb-9cef-9566fac95bed' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2771a18f0682a32ab003deebebb9e24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d2771a18f0682a32ab003deebebb9e24","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"}}},"level":"info","message":"received a callback","requestID":"d2771a18f0682a32ab003deebebb9e24"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"267e5320-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fabc57ad3-5cfa-4cdb-9cef-9566fac95bed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d28b3c3-431d-4114-bc08-7205cdd13629","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.4007545} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.614967,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"267e5320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed","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":"267e5320-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"267e5320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed 200 12ms","method":"GET","requestID":"267e5320-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 65ms","method":"POST","requestID":"d2771a18f0682a32ab003deebebb9e24","responseTime":65,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch","requestID":"d2771a18f0682a32ab003deebebb9e24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26869080-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4aace59-cc15-439a-bace-1370283ec34c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.4551573} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.542347,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26869080-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"26869080-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26869080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling 200 13ms","method":"POST","requestID":"26869080-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26892890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efcc1455-b33a-4892-b4b8-c8a0f8af36a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.471557} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.318257,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26892890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"26892890-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26892890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling 200 12ms","method":"POST","requestID":"26892890-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q","level":"info","message":"auth send jwt","requestID":"c7c2c77068c90e1bfa77be0255829ab7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7c2c77068c90e1bfa77be0255829ab7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","requestID":"c7c2c77068c90e1bfa77be0255829ab7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.291451,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c7c2c77068c90e1bfa77be0255829ab7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540973,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7c2c77068c90e1bfa77be0255829ab7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","requestID":"c7c2c77068c90e1bfa77be0255829ab7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7c2c77068c90e1bfa77be0255829ab7"} experiment-1 | {"level":"info","message":"GET /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108 200 17ms","method":"GET","requestID":"c7c2c77068c90e1bfa77be0255829ab7","responseTime":17,"status":200,"url":"/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q","level":"info","message":"auth send jwt","requestID":"3d782e9f49868cfc689bd2485eea283f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d782e9f49868cfc689bd2485eea283f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","requestID":"3d782e9f49868cfc689bd2485eea283f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.90021,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d782e9f49868cfc689bd2485eea283f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540973,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d782e9f49868cfc689bd2485eea283f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Attempting to finish experiment","requestID":"3d782e9f49868cfc689bd2485eea283f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.197457,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540973,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed","device":"9ef61959-6786-4213-a4f2-69daaf462e40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"39661ecf-f27c-4cfa-9076-18dd828667e9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96b6a4b5ba3c293cff0cc7c2ccef0d26","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fabc57ad3-5cfa-4cdb-9cef-9566fac95bed': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fabc57ad3-5cfa-4cdb-9cef-9566fac95bed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5cfdcf78-455c-4929-ad88-58da4d6872ea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.6571531} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"96b6a4b5ba3c293cff0cc7c2ccef0d26","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9203a5dd0b0515757a72527dc7b9fe27","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bde8f6ca-3714-444d-85ef-825edb578891","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.6579678} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"}}},"level":"info","message":"received a callback","requestID":"96b6a4b5ba3c293cff0cc7c2ccef0d26"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9203a5dd0b0515757a72527dc7b9fe27","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"}}},"level":"info","message":"received a callback","requestID":"9203a5dd0b0515757a72527dc7b9fe27"} device-1 | {"data":{"peerconnection":"abc57ad3-5cfa-4cdb-9cef-9566fac95bed","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed 204 53ms","method":"DELETE","requestID":"26a207c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":53,"status":204,"url":"/peerconnections/abc57ad3-5cfa-4cdb-9cef-9566fac95bed"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"},"level":"info","message":"Successfully finished experiment","requestID":"3d782e9f49868cfc689bd2485eea283f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26ae8ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ef61959-6786-4213-a4f2-69daaf462e40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae5aa07f-ef1b-481a-9620-11024a7c1f89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.7174468} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.719232,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26ae8ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"26ae8ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26ae8ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling 200 13ms","method":"POST","requestID":"26ae8ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9ef61959-6786-4213-a4f2-69daaf462e40/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52f195ba-97b5-4298-ad8d-f6b6b8e57108': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52f195ba-97b5-4298-ad8d-f6b6b8e57108","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"23ea0c50-c8a7-4e20-b2ab-61ae86a67ab5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.7234242} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1c011b3-4a22-4414-bae0-c09651371b0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.7237728} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3d782e9f49868cfc689bd2485eea283f","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26b0fbe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39661ecf-f27c-4cfa-9076-18dd828667e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77d8aff8-3f8a-4eda-b5f7-7fa8daf314eb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.7322803} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.30009,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26b0fbe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39661ecf-f27c-4cfa-9076-18dd828667e9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"26b0fbe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26b0fbe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling 200 11ms","method":"POST","requestID":"26b0fbe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/39661ecf-f27c-4cfa-9076-18dd828667e9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108","requestID":"3d782e9f49868cfc689bd2485eea283f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108 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":"3d782e9f49868cfc689bd2485eea283f"} experiment-1 | {"level":"info","message":"DELETE /experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108 204 183ms","method":"DELETE","requestID":"3d782e9f49868cfc689bd2485eea283f","responseTime":183,"status":204,"url":"/experiments/52f195ba-97b5-4298-ad8d-f6b6b8e57108"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3029","request_time":"4.479","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1fc3842b5960e6fa2f13295e77c32929"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"96b6a4b5ba3c293cff0cc7c2ccef0d26","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"96b6a4b5ba3c293cff0cc7c2ccef0d26"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"9203a5dd0b0515757a72527dc7b9fe27","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"9203a5dd0b0515757a72527dc7b9fe27"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q","level":"info","message":"auth send jwt","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.957","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"30209652e8984d518405ee58a75bd729"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.925512,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540973,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","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/39661ecf-f27c-4cfa-9076-18dd828667e9' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9ef61959-6786-4213-a4f2-69daaf462e40' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"17dda625-ee9c-46c5-b283-acb5858d6080","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8246558} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3e03ff9-4dc4-42e1-ab38-faca31fb32c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8303518} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"86e7da66-fc2a-4e8e-961c-d2adb7835823","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8405476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7639ae39-4612-48bf-b3fc-01b1934e7d61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8406413} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"bb1fea20-a00c-40a9-b57e-156b6c7e79b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.844914} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"203f99a8c4f0ba1bddd761cc0d6ec86a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q","level":"info","message":"auth send jwt","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.801968,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540973,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3M30.dXjLT15tpHdV3Op6f5WkeeWEKGXvH4JYsCnK9-ofm-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e20001ea-77b0-4282-822e-f4050b621234","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8730397} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06ea6581-eb73-4094-9d5b-26f22d53a3ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8776984} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"bebcf3c2-a81b-4f02-a141-a0da7a4ea238","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.887998} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f82c317f-fcd4-458e-ae74-b0a6b75f9d3a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.888108} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"f3627532-1563-4ffe-beb7-ba72ebec08ff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540973.8921864} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa"} gateway-1 | {"time_local":"10/Oct/2024:06:16:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"d8b0af8cda8a3b73c4ac75e77412c5fa","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a76b9f09684faa26f4d03d498ed64ad5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a76b9f09684faa26f4d03d498ed64ad5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/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":"a76b9f09684faa26f4d03d498ed64ad5"} device-1 | {"level":"info","message":"OPTIONS /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/websocket 200 1ms","method":"OPTIONS","requestID":"a76b9f09684faa26f4d03d498ed64ad5","responseTime":1,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4","level":"info","message":"auth send jwt","requestID":"353327f520f99331f512610b5ca4af3d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"353327f520f99331f512610b5ca4af3d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"353327f520f99331f512610b5ca4af3d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb00db384b9528cd6407d6af173b9df5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb00db384b9528cd6407d6af173b9df5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/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":"cb00db384b9528cd6407d6af173b9df5"} device-1 | {"level":"info","message":"OPTIONS /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/websocket 200 1ms","method":"OPTIONS","requestID":"cb00db384b9528cd6407d6af173b9df5","responseTime":1,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951727,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"353327f520f99331f512610b5ca4af3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540975,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"353327f520f99331f512610b5ca4af3d","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4","level":"info","message":"auth send jwt","requestID":"8e8daa654386c96b00482d010bbcdefc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8e8daa654386c96b00482d010bbcdefc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8e8daa654386c96b00482d010bbcdefc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706866,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8e8daa654386c96b00482d010bbcdefc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540975,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8e8daa654386c96b00482d010bbcdefc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"353327f520f99331f512610b5ca4af3d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/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":"353327f520f99331f512610b5ca4af3d"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/websocket 200 23ms","method":"POST","requestID":"353327f520f99331f512610b5ca4af3d","responseTime":23,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8e8daa654386c96b00482d010bbcdefc"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/websocket 200 21ms","method":"POST","requestID":"8e8daa654386c96b00482d010bbcdefc","responseTime":21,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/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":"8e8daa654386c96b00482d010bbcdefc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0e763f91162c53bb25580997dd8921dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0e763f91162c53bb25580997dd8921dc","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0e763f91162c53bb25580997dd8921dc"} device-1 | {"level":"info","message":"OPTIONS /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 0ms","method":"OPTIONS","requestID":"0e763f91162c53bb25580997dd8921dc","responseTime":0,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d3040ad23f70e289b594c04a6df072dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d3040ad23f70e289b594c04a6df072dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d3040ad23f70e289b594c04a6df072dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4","level":"info","message":"auth send jwt","requestID":"a42402f44300709512b7bb499c8a4ff0"} device-1 | {"level":"info","message":"OPTIONS /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 1ms","method":"OPTIONS","requestID":"d3040ad23f70e289b594c04a6df072dc","responseTime":1,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a42402f44300709512b7bb499c8a4ff0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a42402f44300709512b7bb499c8a4ff0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:15Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4","level":"info","message":"auth send jwt","requestID":"05f574b872d33309b59178f1bbd6f809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755053,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:15Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"05f574b872d33309b59178f1bbd6f809","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a42402f44300709512b7bb499c8a4ff0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540975,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a42402f44300709512b7bb499c8a4ff0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"05f574b872d33309b59178f1bbd6f809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956782,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"05f574b872d33309b59178f1bbd6f809","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540975,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3NX0.coLbGLGKm_Zj4jU4oKuhQba4EHi6plyOc9SRUqx1HG4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05f574b872d33309b59178f1bbd6f809","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"604f6a99-420e-4077-b7e9-605ad541d464","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540975.9790797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a42402f44300709512b7bb499c8a4ff0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"e3390d97-b97b-48fa-8a7a-7f8b5ad467b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540975.9826233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"05f574b872d33309b59178f1bbd6f809","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9962b20-0d88-4e11-a28a-9aafb24f9226","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540975.986045} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a42402f44300709512b7bb499c8a4ff0","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c036f1c9-c18d-494a-9382-68aa2340fd31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540975.9880626} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"05f574b872d33309b59178f1bbd6f809","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"a3ec2154-0baa-4c37-9ffa-0c1ffd591b9a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.0060377} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"05f574b872d33309b59178f1bbd6f809","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"05f574b872d33309b59178f1bbd6f809"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"05f574b872d33309b59178f1bbd6f809"} device-1 | {"level":"info","message":"PATCH /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 38ms","method":"PATCH","requestID":"05f574b872d33309b59178f1bbd6f809","responseTime":38,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"0dc34655-f754-4e06-b5b1-51021444a244","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.0100434} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a42402f44300709512b7bb499c8a4ff0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a42402f44300709512b7bb499c8a4ff0"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a42402f44300709512b7bb499c8a4ff0"} device-1 | {"level":"info","message":"PATCH /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 48ms","method":"PATCH","requestID":"a42402f44300709512b7bb499c8a4ff0","responseTime":48,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.918272,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"58ecc6e4-dd43-445f-9e4f-2f7b8fdd1dd1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.039203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7"} device-1 | {"level":"info","message":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 19ms","method":"GET","requestID":"f60ae83bbb5ef7f25f5f888ee1da6db7","responseTime":19,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"5da4b85eba8423ab21a23f8810fe66d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5da4b85eba8423ab21a23f8810fe66d3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5da4b85eba8423ab21a23f8810fe66d3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.019143,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5da4b85eba8423ab21a23f8810fe66d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5da4b85eba8423ab21a23f8810fe66d3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"9a5a4e3d-dbed-4e52-8de6-a6e02e4502e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.0640337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5da4b85eba8423ab21a23f8810fe66d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5da4b85eba8423ab21a23f8810fe66d3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5da4b85eba8423ab21a23f8810fe66d3"} device-1 | {"level":"info","message":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 21ms","method":"GET","requestID":"5da4b85eba8423ab21a23f8810fe66d3","responseTime":21,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"e9419845ed3986231d82806f0eadacf3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9419845ed3986231d82806f0eadacf3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e9419845ed3986231d82806f0eadacf3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.156434,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e9419845ed3986231d82806f0eadacf3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9419845ed3986231d82806f0eadacf3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to run experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to book experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully booked experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.290447,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742288,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"e83280fa-11ba-467f-b321-fc86846cdc61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.1389852} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"3e1ed2fb-21b2-4091-a049-95baf7128f15","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.1424177} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 14ms","method":"GET","requestID":"281fa710-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 16ms","method":"GET","requestID":"281ff530-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Setting up experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully set up experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"282ced80-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully running experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.397464,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276794,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"06cd4cd4-d278-4f20-a4a6-d781bda888ac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2281287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"3f2d3197-691e-4282-b753-af98470ec1c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2303367} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:52310","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"152a23f9-5128-4f57-9156-ea06cc7bebd0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2337883} authorization-1 | {"client_addr":"127.0.0.1:52310","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.958026,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"282ced80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","rebac_allow":false,"scope_allow":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":"282ced80-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 30ms","method":"GET","requestID":"282c5140-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 30ms","method":"GET","requestID":"282c9f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2684fe06-a0b1-4ba5-aeb4-91940ce240a8#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2684fe06-a0b1-4ba5-aeb4-91940ce240a8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e2883835-e5e8-4ed4-91b5-3bb143879595","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2444952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47df45f4-3394-4fb8-af8e-c34204c362ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2448986} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"282ced80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling 200 29ms","method":"POST","requestID":"282ced80-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"e9419845ed3986231d82806f0eadacf3","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2831cf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28321da0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e99eaf2-7ef5-4d5c-9c29-4f5ba465a6dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2552204} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.619183,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2831cf80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2831cf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62e02cb2-e52e-4c75-bc48-01ddac8556d5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2565863} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.968483,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28321da0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","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/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e9419845ed3986231d82806f0eadacf3"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"28321da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 177ms","method":"POST","requestID":"e9419845ed3986231d82806f0eadacf3","responseTime":177,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2831cf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling 200 13ms","method":"POST","requestID":"2831cf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28321da0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"096fbf2f6b286afa4e123010051dc3ba"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling 200 15ms","method":"POST","requestID":"28321da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"096fbf2f6b286afa4e123010051dc3ba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28346790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"096fbf2f6b286afa4e123010051dc3ba"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00606232-d1ef-4e2e-9cd1-986181720cab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2710726} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.108827,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557473,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28346790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"28346790-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"096fbf2f6b286afa4e123010051dc3ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"096fbf2f6b286afa4e123010051dc3ba","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28346790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling 200 13ms","method":"POST","requestID":"28346790-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"aec7f048-930b-4f12-95a5-9e10e696e67b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.279001} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"096fbf2f6b286afa4e123010051dc3ba","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"096fbf2f6b286afa4e123010051dc3ba"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"096fbf2f6b286afa4e123010051dc3ba"} device-1 | {"level":"info","message":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 17ms","method":"GET","requestID":"096fbf2f6b286afa4e123010051dc3ba","responseTime":17,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932649,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806073,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.840528203Z"}]},"request_id":"627f76ac-3d04-40ad-947b-5fefeb29d0b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2906697} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"c669b045-bf94-42d8-81d7-91cb58b883bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.2917492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.939417,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8? 200 15ms","method":"GET","requestID":"2836d890-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 17ms","method":"GET","requestID":"2836ffa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:13.887969905Z"}]},"request_id":"e9a20a0f-b78c-4f1b-b504-31ff5a598fd9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.300039} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Building connection plan","requestID":"e9419845ed3986231d82806f0eadacf3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"7cba326c-7276-4b15-9937-1e579a1452e5"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"a680acc1-61ef-4ed8-ab4d-e2dc7a8e5fc8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"a92dc988-dfa1-4010-9a08-0e1a2f70794d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e9419845ed3986231d82806f0eadacf3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e9419845ed3986231d82806f0eadacf3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e"} device-1 | {"level":"info","message":"GET /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34? 200 15ms","method":"GET","requestID":"b173d8f6dbbcc9c0d5b2fe02e3fa2a0e","responseTime":15,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.671701,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e8d9dc9b-f8ec-44a8-8d3d-af20b5aedc15","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.3138971} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1a4c606-4e01-40d1-87f3-53e3ad8379cf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.314091} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b'","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b'","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} 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":"283a33f0-86cf-11ef-b00e-2fb111b9dda5","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":"283a33f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e9419845ed3986231d82806f0eadacf3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28422330-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f391b78a-8fa8-4355-b17e-87d9b3437ffc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.359985} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.423209,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28422330-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28422330-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28422330-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling 200 10ms","method":"POST","requestID":"28422330-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling"} device-1 | {"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2843f7f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dc6511e-0b94-4214-93ea-ca237b97ab80","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.3712642} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.01149,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2843f7f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2843f7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2843f7f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling 200 8ms","method":"POST","requestID":"2843f7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling"} device-1 | {"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8684453691970511477 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:Fbxd\r\na=ice-pwd:00PS70wX62bF1iOilsqFbevw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 10:6F:9E:A2:96:35:D5:73:08:27:F0:ED:BF:0D:0D:D6:53:A8:D5:E2:07:D4:63:7C:A0:28:EA:47:DE:40:4D:CB\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 419045173949541747 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:tXTv\r\na=ice-pwd:9PJVCB9w7CPlOYsrDrwjcoLe\r\na=ice-options:trickle\r\na=fingerprint:sha-256 28:0F:0D:1C:CB:18:BC:0D:9F:03:0E:E1:6E:1B:CC:36:30:2E:1F:F6:9C:FB:40:8D:2E:64:56:7C:77:B0:91:23\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2414408761 1 udp 2113937151 5efd0028-3d3d-4e8c-8788-629b5b30b6ba.local 47646 typ host generation 0 ufrag tXTv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:482563370 1 udp 1677729535 141.24.211.56 47646 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tXTv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","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/16be23d0-8b9e-4964-97e5-a34bb4d1fb34'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34'"} device-1 | {"content":{"candidate":"candidate:2851330557 1 udp 2113937151 894f4627-1ee1-414f-9696-e2e30a47c330.local 57117 typ host generation 0 ufrag Fbxd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:987265262 1 udp 1677729535 141.24.211.56 57117 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Fbxd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","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/6d57c949-e094-4f4a-a10f-c849e12da8b8'"} device-1 | {"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","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/cb0980b1-8e61-4b16-b159-878b8a39617b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"525d54555197ef0b4e26bdf184e01839","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"525d54555197ef0b4e26bdf184e01839","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"}}},"level":"info","message":"received a callback","requestID":"525d54555197ef0b4e26bdf184e01839"} device-1 | {"device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"525d54555197ef0b4e26bdf184e01839","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"525d54555197ef0b4e26bdf184e01839"} device-1 | {"device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","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/cb0980b1-8e61-4b16-b159-878b8a39617b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aae77cb7ecc3233610893c9d7c1cb72b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aae77cb7ecc3233610893c9d7c1cb72b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"}}},"level":"info","message":"received a callback","requestID":"aae77cb7ecc3233610893c9d7c1cb72b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"28518c80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb0980b1-8e61-4b16-b159-878b8a39617b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af252371-ae4c-4af7-8423-454becc837bb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.4614768} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.590451,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28518c80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","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":"28518c80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"28518c80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b 200 10ms","method":"GET","requestID":"28518c80-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"aae77cb7ecc3233610893c9d7c1cb72b","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"aae77cb7ecc3233610893c9d7c1cb72b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28566e80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0eeddd2-76eb-4c45-ae76-65e24d39dc9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.493109} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.622305,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28566e80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"28566e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28566e80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling 200 10ms","method":"POST","requestID":"28566e80-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28584340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9de3ab31-35b1-4e51-bbe1-80a0624a6e8b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.5053487} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.614545,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28584340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28584340-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28584340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling 200 10ms","method":"POST","requestID":"28584340-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"e73aed2eb719ae8006e93d23e2396041"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e73aed2eb719ae8006e93d23e2396041","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","requestID":"e73aed2eb719ae8006e93d23e2396041"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245694,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e73aed2eb719ae8006e93d23e2396041","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e73aed2eb719ae8006e93d23e2396041","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","requestID":"e73aed2eb719ae8006e93d23e2396041"} experiment-1 | {"level":"info","message":"GET /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8 200 16ms","method":"GET","requestID":"e73aed2eb719ae8006e93d23e2396041","responseTime":16,"status":200,"url":"/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e73aed2eb719ae8006e93d23e2396041"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"b154238cb0ffe355827f6e374066f150"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b154238cb0ffe355827f6e374066f150","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","requestID":"b154238cb0ffe355827f6e374066f150"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.271312,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b154238cb0ffe355827f6e374066f150","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b154238cb0ffe355827f6e374066f150","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Attempting to finish experiment","requestID":"b154238cb0ffe355827f6e374066f150"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.351666,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","device":"16be23d0-8b9e-4964-97e5-a34bb4d1fb34","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b","device":"6d57c949-e094-4f4a-a10f-c849e12da8b8","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/cb0980b1-8e61-4b16-b159-878b8a39617b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb0980b1-8e61-4b16-b159-878b8a39617b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb0980b1-8e61-4b16-b159-878b8a39617b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"93acfbb1-bd00-47e4-a265-d2127fc2e57e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.7463624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15863ae3-97be-4ecb-8a42-4dc616e142dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.7468648} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"988ac94e2d00c337e6ec2bdc256feebf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"988ac94e2d00c337e6ec2bdc256feebf","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c74537209fd9c7310db19e9fc71b66a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"}}},"level":"info","message":"received a callback","requestID":"988ac94e2d00c337e6ec2bdc256feebf"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9c74537209fd9c7310db19e9fc71b66a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"}}},"level":"info","message":"received a callback","requestID":"9c74537209fd9c7310db19e9fc71b66a"} device-1 | {"data":{"peerconnection":"cb0980b1-8e61-4b16-b159-878b8a39617b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b 204 47ms","method":"DELETE","requestID":"2879fc10-86cf-11ef-b00e-2fb111b9dda5","responseTime":47,"status":204,"url":"/peerconnections/cb0980b1-8e61-4b16-b159-878b8a39617b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"},"level":"info","message":"Successfully finished experiment","requestID":"b154238cb0ffe355827f6e374066f150"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28840e30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16be23d0-8b9e-4964-97e5-a34bb4d1fb34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"149c8596-af98-456f-8f68-5973c491a5dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.7946386} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.29066,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28840e30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"28840e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28840e30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling 200 14ms","method":"POST","requestID":"28840e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/16be23d0-8b9e-4964-97e5-a34bb4d1fb34/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2684fe06-a0b1-4ba5-aeb4-91940ce240a8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2684fe06-a0b1-4ba5-aeb4-91940ce240a8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"4cc99699-a02d-4971-bdfa-dbe45d9ba60d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.8021922} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6af3c40e-1b99-4ed0-83b0-b8af947225d0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.8030624} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"b154238cb0ffe355827f6e374066f150","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2886a640-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d57c949-e094-4f4a-a10f-c849e12da8b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"beaf97a5-5f52-4c19-ad62-25284cdf1cf8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.8104432} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25254,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2886a640-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2886a640-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2886a640-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling 200 12ms","method":"POST","requestID":"2886a640-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6d57c949-e094-4f4a-a10f-c849e12da8b8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8","requestID":"b154238cb0ffe355827f6e374066f150"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8 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":"b154238cb0ffe355827f6e374066f150"} experiment-1 | {"level":"info","message":"DELETE /experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8 204 164ms","method":"DELETE","requestID":"b154238cb0ffe355827f6e374066f150","responseTime":164,"status":204,"url":"/experiments/2684fe06-a0b1-4ba5-aeb4-91940ce240a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"988ac94e2d00c337e6ec2bdc256feebf","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"988ac94e2d00c337e6ec2bdc256feebf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"9c74537209fd9c7310db19e9fc71b66a","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c74537209fd9c7310db19e9fc71b66a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2972","request_time":"0.947","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4a255415adc544891448c67a810166e5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2973","request_time":"0.941","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"118ba0faac529f3bdd631e669a8e3f9a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.911327,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","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/6d57c949-e094-4f4a-a10f-c849e12da8b8' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"142457e8-a7f8-4916-b3d5-13791d475c87","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9054081} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","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/16be23d0-8b9e-4964-97e5-a34bb4d1fb34' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b73b04c-909c-491d-9fcb-b5755e7c0c66","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9103107} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e9ee4cfd-3f85-424e-9977-41926ef8b4b4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.918644} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10f6c958-b408-4154-b44f-a3e506a1382d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.918891} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"254a8f7a-b6ba-44b2-ad1d-0593e3d71bff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9238615} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"d16864bd5a1970605c5d4fa5c9ba53ba","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw","level":"info","message":"auth send jwt","requestID":"a60255bd46fc4e54f9173f6ab613c649"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a60255bd46fc4e54f9173f6ab613c649"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.058045,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a60255bd46fc4e54f9173f6ab613c649","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540976,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3Nn0.B5fKveJnspKoapmn9psdCPZZsfRaX3uGLsTVnyS27qw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4c42e837-8c95-4362-858d-519e98d9c468","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9574442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc540478-e516-491c-96f9-05dd104448a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9631507} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8598d389-7f80-465a-a6ad-74ce042af4c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9753013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cd0fd5e-e666-4a18-aafb-12475f7608b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.975493} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"c494c72d-7639-4c38-b30e-7e453a698fc5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540976.9804766} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a60255bd46fc4e54f9173f6ab613c649"} gateway-1 | {"time_local":"10/Oct/2024:06:16:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a60255bd46fc4e54f9173f6ab613c649"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"a60255bd46fc4e54f9173f6ab613c649","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3N30.oWa-lemkJxLyHfCcnjuydzwgthcQiD54o2-GO11kqaU","level":"info","message":"auth send jwt","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.104552,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540977,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3N30.oWa-lemkJxLyHfCcnjuydzwgthcQiD54o2-GO11kqaU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"1d87b777-3862-4171-9010-900a4fd7ef8a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540977.4747708} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98846b26-0354-4a65-adee-3b56e35d5784","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540977.4809034} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"b442cd5d-7ae9-4d3d-96bd-24dede574b3b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540977.4919837} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7"} device-1 | {"level":"info","message":"PATCH /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568 200 30ms","method":"PATCH","requestID":"5c909e8374fc5ee4ba9f6cbd56b4f7a7","responseTime":30,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3N30.oWa-lemkJxLyHfCcnjuydzwgthcQiD54o2-GO11kqaU","level":"info","message":"auth send jwt","requestID":"8f30f1470d93e704f569a95ef25febf2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8f30f1470d93e704f569a95ef25febf2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8f30f1470d93e704f569a95ef25febf2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058448,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8f30f1470d93e704f569a95ef25febf2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540977,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3N30.oWa-lemkJxLyHfCcnjuydzwgthcQiD54o2-GO11kqaU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f30f1470d93e704f569a95ef25febf2","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8f30f1470d93e704f569a95ef25febf2"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/websocket 200 20ms","method":"POST","requestID":"8f30f1470d93e704f569a95ef25febf2","responseTime":20,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8f30f1470d93e704f569a95ef25febf2"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d476a3d6d665da858271b80b032bdc2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4d476a3d6d665da858271b80b032bdc2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/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":"4d476a3d6d665da858271b80b032bdc2"} device-1 | {"level":"info","message":"OPTIONS /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/websocket 200 1ms","method":"OPTIONS","requestID":"4d476a3d6d665da858271b80b032bdc2","responseTime":1,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OH0.wvXyzXAxS8vCMU26Ze-NGuYYoF499MDqvjTFvoWgC1M","level":"info","message":"auth send jwt","requestID":"c4b5b4bc74efb3468c994fbcbba54120"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4b5b4bc74efb3468c994fbcbba54120","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c4b5b4bc74efb3468c994fbcbba54120"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162003,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c4b5b4bc74efb3468c994fbcbba54120","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540978,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OH0.wvXyzXAxS8vCMU26Ze-NGuYYoF499MDqvjTFvoWgC1M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4b5b4bc74efb3468c994fbcbba54120","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c4b5b4bc74efb3468c994fbcbba54120"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/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":"c4b5b4bc74efb3468c994fbcbba54120"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/websocket 200 21ms","method":"POST","requestID":"c4b5b4bc74efb3468c994fbcbba54120","responseTime":21,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f7458294e8954998aaa6592acd7fff5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4f7458294e8954998aaa6592acd7fff5","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4f7458294e8954998aaa6592acd7fff5"} device-1 | {"level":"info","message":"OPTIONS /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 1ms","method":"OPTIONS","requestID":"4f7458294e8954998aaa6592acd7fff5","responseTime":1,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"4b0a1b3342c9afaf62f926cac6e21905"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b0a1b3342c9afaf62f926cac6e21905","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4b0a1b3342c9afaf62f926cac6e21905"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349103,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b0a1b3342c9afaf62f926cac6e21905","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4b0a1b3342c9afaf62f926cac6e21905","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"efcc0964-868c-4c19-be57-059866cfaebe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.0735068} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4b0a1b3342c9afaf62f926cac6e21905","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8e23ee5-2dd4-439b-b1ea-9bb7a592ad8d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.0808277} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4b0a1b3342c9afaf62f926cac6e21905","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"75cf2fe6-61b9-4da5-ae9a-61947b1060dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.0929124} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b0a1b3342c9afaf62f926cac6e21905","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4b0a1b3342c9afaf62f926cac6e21905"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4b0a1b3342c9afaf62f926cac6e21905"} device-1 | {"level":"info","message":"PATCH /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 38ms","method":"PATCH","requestID":"4b0a1b3342c9afaf62f926cac6e21905","responseTime":38,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"2bad9156519c7539803cfa804ef7a021"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2bad9156519c7539803cfa804ef7a021","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2bad9156519c7539803cfa804ef7a021"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.252332,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2bad9156519c7539803cfa804ef7a021","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2bad9156519c7539803cfa804ef7a021","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"dd2a6237-f657-4aac-bc16-f1e5e7e725af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.1222188} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2bad9156519c7539803cfa804ef7a021","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2bad9156519c7539803cfa804ef7a021"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2bad9156519c7539803cfa804ef7a021"} device-1 | {"level":"info","message":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 18ms","method":"GET","requestID":"2bad9156519c7539803cfa804ef7a021","responseTime":18,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"96cee68493d6907cbcf48cf38189bac2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96cee68493d6907cbcf48cf38189bac2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96cee68493d6907cbcf48cf38189bac2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"96cee68493d6907cbcf48cf38189bac2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96cee68493d6907cbcf48cf38189bac2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"20a6acbf-47b4-44cf-ab7e-42a3668e51d9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.1483517} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"96cee68493d6907cbcf48cf38189bac2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96cee68493d6907cbcf48cf38189bac2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96cee68493d6907cbcf48cf38189bac2"} device-1 | {"level":"info","message":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? 200 20ms","method":"GET","requestID":"96cee68493d6907cbcf48cf38189bac2","responseTime":20,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4b2df1485f4a2fab7648ca7a5c52352a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.17601,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b2df1485f4a2fab7648ca7a5c52352a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b2df1485f4a2fab7648ca7a5c52352a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to run experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to book experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully booked experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.923943,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.966283,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"7c7891b7-d9a0-4fa6-9130-8e3231879a09","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.2207692} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"49d5ec68-b64c-4a51-ac9a-b05e007e4cb9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.2229505} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 24ms","method":"GET","requestID":"29f55170-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? 200 24ms","method":"GET","requestID":"29f57880-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Setting up experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully set up experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a0297e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101792,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully running experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121321,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.820503,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7235438-e754-4375-a3ec-9d76dd7e6733","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3024328} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a0297e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","rebac_allow":false,"scope_allow":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":"2a0297e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"45606090-68f2-4895-9f97-b77a5c345679","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3051784} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"3292031b-3be5-4157-9d1e-9cbe63e6a83a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.306346} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a0297e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling 200 19ms","method":"POST","requestID":"2a0297e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 25ms","method":"GET","requestID":"2a01d490-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? 200 25ms","method":"GET","requestID":"2a0222b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a061a50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a066870-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ff0e627-bb55-4099-ab36-cfc2b78e3b2d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ecf765b3-8b3d-4372-ae68-ee738c007277","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3210127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0947489-3cd9-4fce-bca2-2f9a00efab94","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3212523} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"4b2df1485f4a2fab7648ca7a5c52352a","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3df31a6-c369-405b-bdff-f9a238b254da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3236248} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.453442,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a061a50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2a061a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d32a6c4-6e09-4fce-b08a-6ef8199aba84","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3266609} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.095269,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a066870-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a066870-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a061a50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling 200 13ms","method":"POST","requestID":"2a061a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"4b2df1485f4a2fab7648ca7a5c52352a","responseTime":168,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a066870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling 200 12ms","method":"POST","requestID":"2a066870-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a08b260-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"f7fcab25401e482653861a424e9facef"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f7fcab25401e482653861a424e9facef","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7fcab25401e482653861a424e9facef"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.601157,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f7fcab25401e482653861a424e9facef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f7fcab25401e482653861a424e9facef","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"329e0079-7558-44ec-9e1b-aec91579299c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3393056} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.241739,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a08b260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a08b260-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"ab290c6d-3a11-4461-9f3c-c8ef7eee1712","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3439364} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7fcab25401e482653861a424e9facef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a08b260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling 200 12ms","method":"POST","requestID":"2a08b260-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7fcab25401e482653861a424e9facef"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7fcab25401e482653861a424e9facef"} device-1 | {"level":"info","message":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 12ms","method":"GET","requestID":"f7fcab25401e482653861a424e9facef","responseTime":12,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166917,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk","level":"info","message":"auth send jwt","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52308","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652931,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.918624866Z"}]},"request_id":"34e5fecb-9c36-42fb-ae5e-9f919deef43d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3576941} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883724,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e0fcc4226bc83172ab93c1d585c9a6a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"9ef76034-3643-4fe8-95d5-3d51a1c81cf6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3613873} device-1 | {"level":"info","message":"GET /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8? 200 14ms","method":"GET","requestID":"2a0ad540-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:16.975281763Z"}]},"request_id":"98298d95-6946-4692-b236-a37818bfe8f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3664465} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? 200 17ms","method":"GET","requestID":"2a0b2360-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Building connection plan","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"5196aaa3-c7c2-4cd5-82d9-7703d2bcfb49"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"9de9702a-faf8-491d-ad79-9f0b178f6707"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"aaf03d20-acee-4a12-aa5e-1362ad9e7827"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2"} device-1 | {"level":"info","message":"GET /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568? 200 13ms","method":"GET","requestID":"e0fcc4226bc83172ab93c1d585c9a6a2","responseTime":13,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.973373,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540979,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk3OX0.l58ONvhKPVpP0ME7WGyaupN8RbnKtzI5522OhGHtpUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f7f12023-45a5-4042-80e1-4378738bddf2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.3826597} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b711c994-06aa-48b7-bec5-1b3292d58b28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.382918} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc'","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc'","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} 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":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"2a0e30a0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4b2df1485f4a2fab7648ca7a5c52352a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a16bc20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} device-1 | {"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ee69b0a-f147-4bf1-bee1-0430c2c33e8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.4312634} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.809508,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a16bc20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2a16bc20-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a16bc20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling 200 11ms","method":"POST","requestID":"2a16bc20-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8272632224556779876 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:bMg+\r\na=ice-pwd:qVdirJFnMY+oejupOMA+eWqP\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0A:F5:8D:82:BC:F8:5B:40:5D:25:05:A0:00:94:26:19:C0:06:04:A3:3F:5A:61:81:B2:AB:43:34:26:32:52: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":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a18df00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fede189-e5b7-4f04-8941-de6540bed788","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540979.4444516} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.157745,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a18df00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a18df00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a18df00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling 200 8ms","method":"POST","requestID":"2a18df00-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling"} device-1 | {"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f1cac7b69fa10063183fa98ab23c4431","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f1cac7b69fa10063183fa98ab23c4431","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"}}},"level":"info","message":"received a callback","requestID":"f1cac7b69fa10063183fa98ab23c4431"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"f1cac7b69fa10063183fa98ab23c4431","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"f1cac7b69fa10063183fa98ab23c4431"} device-1 | {"content":{"candidate":"candidate:447651442 1 udp 2113937151 9b4734a6-cd3a-4af3-8c33-b4553b3af928.local 57337 typ host generation 0 ufrag bMg+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2659447821 1 udp 1677729535 141.24.211.56 57337 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bMg+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3448654726 1 udp 33562623 141.24.210.113 49777 typ relay raddr 141.24.211.56 rport 57337 generation 0 ufrag bMg+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","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/0facffe4-8b38-4217-9335-f80a4fd96bc8'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8'"} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","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/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"169fadc2ebd9ff6aa4cd6feb0f02052b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"169fadc2ebd9ff6aa4cd6feb0f02052b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"}}},"level":"info","message":"received a callback","requestID":"169fadc2ebd9ff6aa4cd6feb0f02052b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2b59c370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1226434-6653-4122-9bd0-e78ff8d698cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.5494213} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.350105,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b59c370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","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":"2b59c370-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2b59c370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc 200 11ms","method":"GET","requestID":"2b59c370-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"169fadc2ebd9ff6aa4cd6feb0f02052b","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"169fadc2ebd9ff6aa4cd6feb0f02052b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2b5e5750-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b37d6ad-f892-494c-885c-dcf41d222f86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.5788372} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.67422,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b5e5750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2b5e5750-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2b5e5750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling 200 11ms","method":"POST","requestID":"2b5e5750-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2b605320-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"554f6420-4491-4a13-bd9c-0a1e73ef5557","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.5935729} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.31898,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b605320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2b605320-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2b605320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling 200 12ms","method":"POST","requestID":"2b605320-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I","level":"info","message":"auth send jwt","requestID":"9572d81d8ae74fecd27fd654c33050d7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9572d81d8ae74fecd27fd654c33050d7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","requestID":"9572d81d8ae74fecd27fd654c33050d7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.157545,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9572d81d8ae74fecd27fd654c33050d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540981,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9572d81d8ae74fecd27fd654c33050d7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","requestID":"9572d81d8ae74fecd27fd654c33050d7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9572d81d8ae74fecd27fd654c33050d7"} experiment-1 | {"level":"info","message":"GET /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d 200 17ms","method":"GET","requestID":"9572d81d8ae74fecd27fd654c33050d7","responseTime":17,"status":200,"url":"/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I","level":"info","message":"auth send jwt","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c055ad4ddfef2a27bc43297b9895d68a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.389224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c055ad4ddfef2a27bc43297b9895d68a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540981,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c055ad4ddfef2a27bc43297b9895d68a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Attempting to finish experiment","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.15758,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540981,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","device":"0facffe4-8b38-4217-9335-f80a4fd96bc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7ed4642e-6fd5-4849-a3cc-06fc4c320568","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc64ab9d1-ba00-4154-9bb9-ccc52af3bbfc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc64ab9d1-ba00-4154-9bb9-ccc52af3bbfc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"ca0f8d09-3f81-4070-8b55-47a134dc3856","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.8909202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c95be1e1-1773-46fa-b1ca-891bf4c1643a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.8910909} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58fd1839942919f3ca42d37929a92e34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"58fd1839942919f3ca42d37929a92e34","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d29eb39076a4e837c5c13a7c9974ef5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"}}},"level":"info","message":"received a callback","requestID":"58fd1839942919f3ca42d37929a92e34"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8d29eb39076a4e837c5c13a7c9974ef5","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"}}},"level":"info","message":"received a callback","requestID":"8d29eb39076a4e837c5c13a7c9974ef5"} device-1 | {"level":"info","message":"DELETE /peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc 204 28ms","method":"DELETE","requestID":"2b8b5ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":204,"url":"/peerconnections/c64ab9d1-ba00-4154-9bb9-ccc52af3bbfc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"},"level":"info","message":"Successfully finished experiment","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2b9286b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7ed4642e-6fd5-4849-a3cc-06fc4c320568","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c34d46d-06c2-4bb4-b757-0d7ba275f528","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.9192662} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.485438,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b9286b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b9286b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2b9286b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling 200 8ms","method":"POST","requestID":"2b9286b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/7ed4642e-6fd5-4849-a3cc-06fc4c320568/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2b940d50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ff0e627-bb55-4099-ab36-cfc2b78e3b2d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"edebbee9-bd10-4efe-a1b8-74e9bad8143b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.9266117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0672cbc8-c260-4aff-ba88-d4f54a41a7e7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.9268107} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c055ad4ddfef2a27bc43297b9895d68a","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0facffe4-8b38-4217-9335-f80a4fd96bc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c51a6d67-6bab-4191-b70a-81819df97bf1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540981.9309807} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.584469,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b940d50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b940d50-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2b940d50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling 200 10ms","method":"POST","requestID":"2b940d50-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/0facffe4-8b38-4217-9335-f80a4fd96bc8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c055ad4ddfef2a27bc43297b9895d68a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3317","request_time":"4.469","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5939cfc1843698a26c0e0da385c4fd6e"} experiment-1 | {"level":"info","message":"DELETE /experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d 204 141ms","method":"DELETE","requestID":"c055ad4ddfef2a27bc43297b9895d68a","responseTime":141,"status":204,"url":"/experiments/9ff0e627-bb55-4099-ab36-cfc2b78e3b2d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 102ms","method":"POST","requestID":"58fd1839942919f3ca42d37929a92e34","responseTime":102,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.106","http_referrer":"","http_user_agent":"node-fetch","requestID":"58fd1839942919f3ca42d37929a92e34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I","level":"info","message":"auth send jwt","requestID":"e13e3d68745932aafa8640ad8f7c4572"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e13e3d68745932aafa8640ad8f7c4572","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"8d29eb39076a4e837c5c13a7c9974ef5","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.106","http_referrer":"","http_user_agent":"node-fetch","requestID":"8d29eb39076a4e837c5c13a7c9974ef5"} device-1 | {"level":"info","message":"postDevices called","requestID":"e13e3d68745932aafa8640ad8f7c4572"} gateway-1 | {"time_local":"10/Oct/2024:06:16:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"2.990","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"226de7d5f8c6eb011b1c2130aa5d6e40"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.908363,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e13e3d68745932aafa8640ad8f7c4572","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540981,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4MX0.z4kQKMFZRQ-Id0jZ_hR91ZrC2Xn9ti0tX3clG-wkg8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","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/7ed4642e-6fd5-4849-a3cc-06fc4c320568' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1efcf885-fa13-453a-a5d3-3df905fce9df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0200303} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","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/0facffe4-8b38-4217-9335-f80a4fd96bc8' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2357c60f-5816-4cd6-bc78-dfc05a31ac84","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0254903} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5c1770e6-10bd-43e2-9f43-8206fccd2ffc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0360627} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce1ad8d6-711b-4a20-971f-92b8635c7a76","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0362756} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"e39367d6-09d8-4dc0-be17-bd7181b63b57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0413241} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e13e3d68745932aafa8640ad8f7c4572"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e13e3d68745932aafa8640ad8f7c4572","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e13e3d68745932aafa8640ad8f7c4572"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ","level":"info","message":"auth send jwt","requestID":"7309199e599da43b2fcc2506152a8559"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7309199e599da43b2fcc2506152a8559"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.723944,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7309199e599da43b2fcc2506152a8559","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540982,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"08af8998-6761-4892-87fe-944440ebf510","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0647333} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"657273e7-66bf-43e0-a442-8e13f4e8516f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.069386} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2382e080-4e6d-42d5-aada-adb5e10019a3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0829747} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22bf9558-fe96-484f-8126-6dc03e0dde3c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0831108} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"02c0322d-db1e-40c1-981d-c5f5b24f08d9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.0875063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7309199e599da43b2fcc2506152a8559"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"7309199e599da43b2fcc2506152a8559","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7309199e599da43b2fcc2506152a8559"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ","level":"info","message":"auth send jwt","requestID":"f3f20079630eb084d8383df33a855e4f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f3f20079630eb084d8383df33a855e4f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f3f20079630eb084d8383df33a855e4f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163205,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f3f20079630eb084d8383df33a855e4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540982,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3f20079630eb084d8383df33a855e4f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"d127109d-0b70-493c-bcb0-2d66e76abd22","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.5714133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3f20079630eb084d8383df33a855e4f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"658c0376-a8bd-4b37-9ae5-d163fa7ec911","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.5753634} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f3f20079630eb084d8383df33a855e4f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"8c4e0092-e33b-4d01-9fde-2fd8956c81d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540982.5872374} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f3f20079630eb084d8383df33a855e4f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f3f20079630eb084d8383df33a855e4f"} device-1 | {"level":"info","message":"PATCH /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5 200 30ms","method":"PATCH","requestID":"f3f20079630eb084d8383df33a855e4f","responseTime":30,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f3f20079630eb084d8383df33a855e4f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ","level":"info","message":"auth send jwt","requestID":"53cddc4c0363f5d415ee886cec228a39"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53cddc4c0363f5d415ee886cec228a39","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"53cddc4c0363f5d415ee886cec228a39"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657025,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53cddc4c0363f5d415ee886cec228a39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540982,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Mn0.miaT_88EvdXsjWbWi1W0vywOQKZg4yLU2WlXtbgF3RQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"53cddc4c0363f5d415ee886cec228a39","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"53cddc4c0363f5d415ee886cec228a39"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/websocket 200 20ms","method":"POST","requestID":"53cddc4c0363f5d415ee886cec228a39","responseTime":20,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"53cddc4c0363f5d415ee886cec228a39"} device-1 | {"level":"info","message":"device 'http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c5d09b9e0d8ff83bd82e916b42834127","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c5d09b9e0d8ff83bd82e916b42834127","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/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":"c5d09b9e0d8ff83bd82e916b42834127"} device-1 | {"level":"info","message":"OPTIONS /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/websocket 200 1ms","method":"OPTIONS","requestID":"c5d09b9e0d8ff83bd82e916b42834127","responseTime":1,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"b62357059015427bd913d959ee326786"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b62357059015427bd913d959ee326786","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b62357059015427bd913d959ee326786"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305571,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b62357059015427bd913d959ee326786","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b62357059015427bd913d959ee326786","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b62357059015427bd913d959ee326786"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/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":"b62357059015427bd913d959ee326786"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/websocket 200 22ms","method":"POST","requestID":"b62357059015427bd913d959ee326786","responseTime":22,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5214afae61ade0fd57c5a1fcc6a6d472","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5214afae61ade0fd57c5a1fcc6a6d472","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5214afae61ade0fd57c5a1fcc6a6d472"} device-1 | {"level":"info","message":"OPTIONS /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 1ms","method":"OPTIONS","requestID":"5214afae61ade0fd57c5a1fcc6a6d472","responseTime":1,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"0662cd07a225931de961fde6d257667a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0662cd07a225931de961fde6d257667a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0662cd07a225931de961fde6d257667a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.662732,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0662cd07a225931de961fde6d257667a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0662cd07a225931de961fde6d257667a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"38d60019-b4e3-42bf-89e3-37cc67474b1c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.223075} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0662cd07a225931de961fde6d257667a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82b77c8b-93a4-4d9c-8503-d473a15c0a12","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.2307613} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0662cd07a225931de961fde6d257667a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"b66ef1f7-ec15-4aed-a21f-5813e2c40e3e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.2428193} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0662cd07a225931de961fde6d257667a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0662cd07a225931de961fde6d257667a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0662cd07a225931de961fde6d257667a"} device-1 | {"level":"info","message":"PATCH /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 39ms","method":"PATCH","requestID":"0662cd07a225931de961fde6d257667a","responseTime":39,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"c2741f8bb9df538380b012bc28adc207"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c2741f8bb9df538380b012bc28adc207","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2741f8bb9df538380b012bc28adc207"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.359787,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c2741f8bb9df538380b012bc28adc207","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c2741f8bb9df538380b012bc28adc207","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"d68123c8-b970-403d-bc43-e7062206fad9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.273724} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c2741f8bb9df538380b012bc28adc207","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2741f8bb9df538380b012bc28adc207"} device-1 | {"level":"info","message":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? 200 18ms","method":"GET","requestID":"c2741f8bb9df538380b012bc28adc207","responseTime":18,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c2741f8bb9df538380b012bc28adc207"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251549,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19f42ccdd0a3efefab00c49fa22f6ab5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"81a6c528-c400-4e04-8f45-f0983c2a893d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.299312} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5"} device-1 | {"level":"info","message":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 16ms","method":"GET","requestID":"19f42ccdd0a3efefab00c49fa22f6ab5","responseTime":16,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"e9e458efae2971003812faaf01f55993"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e9e458efae2971003812faaf01f55993","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e9e458efae2971003812faaf01f55993"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.696591,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e9e458efae2971003812faaf01f55993","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e9e458efae2971003812faaf01f55993","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to run experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to book experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully booked experiment","requestID":"e9e458efae2971003812faaf01f55993"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893786,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.542338,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"7b2101da-da1b-4b42-b1ef-47a4379a1acd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.3555772} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"831acf6d-591e-4095-a421-d99fdcca66ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.3601942} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? 200 15ms","method":"GET","requestID":"2d0577a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 18ms","method":"GET","requestID":"2d059eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Setting up experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully set up experiment","requestID":"e9e458efae2971003812faaf01f55993"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d10e950-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully running experiment","requestID":"e9e458efae2971003812faaf01f55993"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931943,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936955,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"269fc1bf-6de4-4300-9485-dcd234d6454f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.42902} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.128302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d10e950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","rebac_allow":false,"scope_allow":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":"2d10e950-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"fa344cda-0ef8-4d4f-bff4-6050963c0ceb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4314685} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"8ad31a99-51c1-4d23-9f7d-fba621ce257e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4341376} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d10e950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling 200 17ms","method":"POST","requestID":"2d10e950-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d13f690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? 200 28ms","method":"GET","requestID":"2d102600-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 28ms","method":"GET","requestID":"2d107420-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6374d864-d8d5-43d9-bb50-295872776a09#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6374d864-d8d5-43d9-bb50-295872776a09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a45e55ef-43b7-47eb-bf2a-8c25e22396c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4459407} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b36832e3-5db9-4001-9b21-99c0a863026b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4462638} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"e9e458efae2971003812faaf01f55993","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb3292c0-e108-4817-aeb3-d8cca49e975f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4490647} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d152f10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.660596,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d13f690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d13f690-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d13f690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling 200 13ms","method":"POST","requestID":"2d13f690-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de298a2a-05a6-4d9a-91bf-41ddaba27e44","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4551468} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.184034,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d152f10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","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/6374d864-d8d5-43d9-bb50-295872776a09","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e9e458efae2971003812faaf01f55993"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d152f10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"e9e458efae2971003812faaf01f55993","responseTime":147,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d152f10-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling 200 12ms","method":"POST","requestID":"2d152f10-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d1751f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677525,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efd39e32-964d-4d11-87ab-bce1f440803e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4672} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.31757,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d1751f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d1751f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"fb71675e-fe2e-4f4f-88e5-322754f59084","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4693263} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d1751f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling 200 11ms","method":"POST","requestID":"2d1751f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e9e458efae2971003812faaf01f55993"} device-1 | {"level":"info","message":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? 200 13ms","method":"GET","requestID":"3fad6e99ed5ea6d9cdf3fdab8e91e179","responseTime":13,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0","level":"info","message":"auth send jwt","requestID":"2a25c741d82ed4cc4972742682e3f5f2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a25c741d82ed4cc4972742682e3f5f2","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.518387,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251349,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a25c741d82ed4cc4972742682e3f5f2"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.810366,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a25c741d82ed4cc4972742682e3f5f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a25c741d82ed4cc4972742682e3f5f2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.036040911Z"}]},"request_id":"61b3d2f2-f13d-44c2-8a72-8cd5d4c0f5be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.489077} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"053ae98b-a5ba-48e6-af63-861147cd0497","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4896898} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:22.082955653Z"}]},"request_id":"fde1feb9-3315-4299-a01c-56bd50f336b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.4942} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a25c741d82ed4cc4972742682e3f5f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5? 200 20ms","method":"GET","requestID":"2d194dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 19ms","method":"GET","requestID":"2d199be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a25c741d82ed4cc4972742682e3f5f2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Building connection plan","requestID":"e9e458efae2971003812faaf01f55993"} gateway-1 | {"time_local":"10/Oct/2024:06:16:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a25c741d82ed4cc4972742682e3f5f2"} device-1 | {"level":"info","message":"GET /devices/6385c60b-c1f5-42f8-960c-833c17ade21f? 200 16ms","method":"GET","requestID":"2a25c741d82ed4cc4972742682e3f5f2","responseTime":16,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f?"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"dbb39858-c22b-4678-a5ae-dfdcfb1b4fac"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"3fea7136-37c4-4869-a28d-4215877fe5b1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"21e770d4-a059-4512-b8dd-290ee35d75e1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e9e458efae2971003812faaf01f55993"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e9e458efae2971003812faaf01f55993"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.738726,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540984,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4NH0.k7VspA3VG3liG_E7TFMBaedKgSJ9r3aDkMj1yVY4uj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e9adc605-c2f7-4c38-8d05-bf9dd3223146","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.5110939} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b18f1b1b-951d-412a-aa5a-0ad075a67589","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.5113473} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5'","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5'","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} 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":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5","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":"2d1cf740-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e9e458efae2971003812faaf01f55993"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d24e680-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f30c588-fac0-4eb4-ab0e-fc8d4e0245cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.557657} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972317,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d24e680-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d24e680-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d24e680-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling 200 9ms","method":"POST","requestID":"2d24e680-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d26bb40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"943c2a73-7511-469c-9405-e1d012f0710b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540984.569181} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.486311,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d26bb40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d26bb40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d26bb40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling 200 9ms","method":"POST","requestID":"2d26bb40-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling"} device-1 | {"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3412308780902882973 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:xWTY\r\na=ice-pwd:7lkJeyRsSqG379RVzDM4iH1H\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F2:4F:09:97:E1:C1:E8:94:FD:67:8F:FD:2F:85:8A:AD:30:1E:CC:43:17:99:A8:6C:BC:07:F2:67:67:DB:93:E3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96560302e4a1b7b7f1d4bb437664dfe5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"96560302e4a1b7b7f1d4bb437664dfe5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"}}},"level":"info","message":"received a callback","requestID":"96560302e4a1b7b7f1d4bb437664dfe5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"96560302e4a1b7b7f1d4bb437664dfe5","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"96560302e4a1b7b7f1d4bb437664dfe5"} device-1 | {"content":{"candidate":"candidate:1134621641 1 udp 2113937151 580700ef-d211-4f57-8e57-67ea45516f03.local 53652 typ host generation 0 ufrag xWTY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3498791642 1 udp 1677729535 141.24.211.56 53652 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag xWTY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1856497960 1 udp 33562623 141.24.210.113 52825 typ relay raddr 141.24.211.56 rport 53652 generation 0 ufrag xWTY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","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/6385c60b-c1f5-42f8-960c-833c17ade21f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f'"} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","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/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e53be95388b2c5c29827cac30f13b244","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e53be95388b2c5c29827cac30f13b244","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"}}},"level":"info","message":"received a callback","requestID":"e53be95388b2c5c29827cac30f13b244"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2e679fb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50d558ca-ebcf-4440-8732-252740dd53fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.6719098} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.579144,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e679fb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","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":"2e679fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2e679fb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5 200 9ms","method":"GET","requestID":"2e679fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"e53be95388b2c5c29827cac30f13b244","responseTime":34,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2e6be570-86cf-11ef-b00e-2fb111b9dda5"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"e53be95388b2c5c29827cac30f13b244"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"622b4090-a324-47d2-8264-169a53376127","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.7004154} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.836389,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e6be570-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2e6be570-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2e6be570-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling 200 10ms","method":"POST","requestID":"2e6be570-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2e6de140-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6622e9cf-7573-4286-bfd4-410432746577","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.7128851} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.411399,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e6de140-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e6de140-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2e6de140-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling 200 10ms","method":"POST","requestID":"2e6de140-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Nn0.7VpQ9_XlREcjTo4lYptg2o-juisnPqz-vvnsYmA4lzc","level":"info","message":"auth send jwt","requestID":"0d2e90483ba70e0042339ba23b45c1a0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0d2e90483ba70e0042339ba23b45c1a0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6374d864-d8d5-43d9-bb50-295872776a09","requestID":"0d2e90483ba70e0042339ba23b45c1a0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.144751,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0d2e90483ba70e0042339ba23b45c1a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540986,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Nn0.7VpQ9_XlREcjTo4lYptg2o-juisnPqz-vvnsYmA4lzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d2e90483ba70e0042339ba23b45c1a0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6374d864-d8d5-43d9-bb50-295872776a09","requestID":"0d2e90483ba70e0042339ba23b45c1a0"} gateway-1 | {"time_local":"10/Oct/2024:06:16:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6374d864-d8d5-43d9-bb50-295872776a09 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d2e90483ba70e0042339ba23b45c1a0"} experiment-1 | {"level":"info","message":"GET /experiments/6374d864-d8d5-43d9-bb50-295872776a09 200 15ms","method":"GET","requestID":"0d2e90483ba70e0042339ba23b45c1a0","responseTime":15,"status":200,"url":"/experiments/6374d864-d8d5-43d9-bb50-295872776a09"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Nn0.7VpQ9_XlREcjTo4lYptg2o-juisnPqz-vvnsYmA4lzc","level":"info","message":"auth send jwt","requestID":"560973b4ef4c51a0182985a0a3c9378c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"560973b4ef4c51a0182985a0a3c9378c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6374d864-d8d5-43d9-bb50-295872776a09","requestID":"560973b4ef4c51a0182985a0a3c9378c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.261338,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"560973b4ef4c51a0182985a0a3c9378c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540986,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Nn0.7VpQ9_XlREcjTo4lYptg2o-juisnPqz-vvnsYmA4lzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"560973b4ef4c51a0182985a0a3c9378c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Attempting to finish experiment","requestID":"560973b4ef4c51a0182985a0a3c9378c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.282997,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540986,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4Nn0.7VpQ9_XlREcjTo4lYptg2o-juisnPqz-vvnsYmA4lzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","device":"6385c60b-c1f5-42f8-960c-833c17ade21f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29593f7b-6f28-4ac8-a6c5-e84798b412a5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"4c04eae8-1c72-494a-8727-ce454a39fa69","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.9313743} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e29f7ede-f7be-498c-9cd6-40039efcaab2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.9317968} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"641e12244ee0cd5235d4aa0ebb1153ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"641e12244ee0cd5235d4aa0ebb1153ca","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af45f992cf84a96fd4120099aecfa008","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"}}},"level":"info","message":"received a callback","requestID":"641e12244ee0cd5235d4aa0ebb1153ca"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"af45f992cf84a96fd4120099aecfa008","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"}}},"level":"info","message":"received a callback","requestID":"af45f992cf84a96fd4120099aecfa008"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5 204 44ms","method":"DELETE","requestID":"2e8c8cd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":44,"status":204,"url":"/peerconnections/5bd0ecac-9af8-48b8-90a9-0b3ef0a061c5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6374d864-d8d5-43d9-bb50-295872776a09"},"level":"info","message":"Successfully finished experiment","requestID":"560973b4ef4c51a0182985a0a3c9378c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2e9602b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29593f7b-6f28-4ac8-a6c5-e84798b412a5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ec91747-8c9f-4b43-a63e-c06b99bd86a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.9775488} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001172,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e9602b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2e9602b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2e9602b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling 200 12ms","method":"POST","requestID":"2e9602b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6374d864-d8d5-43d9-bb50-295872776a09': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6374d864-d8d5-43d9-bb50-295872776a09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"67eff9f8-fcf7-4bda-8d87-7ceef509b06e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.985307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66f05cb0-f9ba-4261-8a16-fdb3a9fab994","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.9855025} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2e9873b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"560973b4ef4c51a0182985a0a3c9378c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6385c60b-c1f5-42f8-960c-833c17ade21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a02ee65-4936-4942-8c78-d2bb1728e74f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540986.9924066} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65624,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e9873b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6385c60b-c1f5-42f8-960c-833c17ade21f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2e9873b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2e9873b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling 200 12ms","method":"POST","requestID":"2e9873b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6385c60b-c1f5-42f8-960c-833c17ade21f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6374d864-d8d5-43d9-bb50-295872776a09","requestID":"560973b4ef4c51a0182985a0a3c9378c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6374d864-d8d5-43d9-bb50-295872776a09 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"560973b4ef4c51a0182985a0a3c9378c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"4.441","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1f7e5c12b706d08dbc6a59b03a98d6b5"} experiment-1 | {"level":"info","message":"DELETE /experiments/6374d864-d8d5-43d9-bb50-295872776a09 204 165ms","method":"DELETE","requestID":"560973b4ef4c51a0182985a0a3c9378c","responseTime":165,"status":204,"url":"/experiments/6374d864-d8d5-43d9-bb50-295872776a09"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"641e12244ee0cd5235d4aa0ebb1153ca","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"641e12244ee0cd5235d4aa0ebb1153ca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"af45f992cf84a96fd4120099aecfa008","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"af45f992cf84a96fd4120099aecfa008"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"50160b753dc769aa7a2d97cf24061c83"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"50160b753dc769aa7a2d97cf24061c83","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"50160b753dc769aa7a2d97cf24061c83"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"2.907","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ba5ce50ee0b6fe7e8817d6de231425c3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/29593f7b-6f28-4ac8-a6c5-e84798b412a5' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.896064,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50160b753dc769aa7a2d97cf24061c83","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","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/6385c60b-c1f5-42f8-960c-833c17ade21f' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c750699-9b86-4560-abe8-a02fc7a55b56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.0880473} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0d6e11c-f05a-4ed1-91e0-96b261c107ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.0928953} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"860cc181-52f3-45f6-b247-d05a945e209d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.1025815} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7b4a5de-269f-4144-b168-50b0b07aa6f8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.102783} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"4f60f46f-6eb8-419a-8329-937bd604638a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.107808} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"50160b753dc769aa7a2d97cf24061c83"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50160b753dc769aa7a2d97cf24061c83"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"50160b753dc769aa7a2d97cf24061c83","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"59a443ae7f255e2a36439e1605fb6445"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"59a443ae7f255e2a36439e1605fb6445"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.83393,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"59a443ae7f255e2a36439e1605fb6445","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d968a847-154d-4266-ba96-bb58b28cc6bf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.137413} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02f6bba2-4cae-4901-948b-6cb98a5e4b29","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.1421297} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f566683b-c8a2-4c97-851f-c32a47669c16","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.1531165} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7defbe93-427b-4cfd-afd3-22ef291eaba7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.1532426} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"1149e891-3682-422a-9e65-c9bd2197dd3c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.1574392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"59a443ae7f255e2a36439e1605fb6445"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"59a443ae7f255e2a36439e1605fb6445","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59a443ae7f255e2a36439e1605fb6445"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"7cba0e4ed9d331f073e28972c0fc790f"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"7cba0e4ed9d331f073e28972c0fc790f","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7cba0e4ed9d331f073e28972c0fc790f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958539,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973214,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7cba0e4ed9d331f073e28972c0fc790f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7cba0e4ed9d331f073e28972c0fc790f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"f2b5ef24-bbce-49d9-929e-4556ec6b91e9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.646715} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"bca16a97-e7a1-42f5-a8a1-74ecff7c1120","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.6473658} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7cba0e4ed9d331f073e28972c0fc790f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5f06230-3291-4b55-80f3-55c94d8dd55f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.6512218} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"342f1c4c-fa5d-4781-afe1-5ab94068dfb2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.6557312} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7cba0e4ed9d331f073e28972c0fc790f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"4efa0472-0b06-4b70-8b38-305718648651","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.6580582} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7cba0e4ed9d331f073e28972c0fc790f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7cba0e4ed9d331f073e28972c0fc790f"} device-1 | {"level":"info","message":"PATCH /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00 200 25ms","method":"PATCH","requestID":"7cba0e4ed9d331f073e28972c0fc790f","responseTime":25,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7cba0e4ed9d331f073e28972c0fc790f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"655f914983f60fa8f23ef77cf66d985f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"655f914983f60fa8f23ef77cf66d985f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"655f914983f60fa8f23ef77cf66d985f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"be77226a-a975-43bb-aa78-da3928e3ac05","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.66724} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702721,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"655f914983f60fa8f23ef77cf66d985f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"655f914983f60fa8f23ef77cf66d985f","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2dced898-5676-4b93-971b-921083a47097 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c"} device-1 | {"level":"info","message":"PATCH /devices/2dced898-5676-4b93-971b-921083a47097 200 38ms","method":"PATCH","requestID":"ff7abfc8bf25005cb8a640542c8a8a8c","responseTime":38,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707604,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"655f914983f60fa8f23ef77cf66d985f"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/websocket 200 19ms","method":"POST","requestID":"655f914983f60fa8f23ef77cf66d985f","responseTime":19,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"655f914983f60fa8f23ef77cf66d985f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/websocket 200 18ms","method":"POST","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0","responseTime":18,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2dced898-5676-4b93-971b-921083a47097/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"6fd1076fc5f4f4f60ab3dd7b5cc325a0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2dced898-5676-4b93-971b-921083a47097' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"ff13caba6f22af28a67b9b1285d96e7a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ff13caba6f22af28a67b9b1285d96e7a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff13caba6f22af28a67b9b1285d96e7a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89029,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ff13caba6f22af28a67b9b1285d96e7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ff13caba6f22af28a67b9b1285d96e7a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"18e69123-4f02-4e08-b317-4c4b2475124f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.7342243} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff13caba6f22af28a67b9b1285d96e7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff13caba6f22af28a67b9b1285d96e7a"} device-1 | {"level":"info","message":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? 200 12ms","method":"GET","requestID":"ff13caba6f22af28a67b9b1285d96e7a","responseTime":12,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff13caba6f22af28a67b9b1285d96e7a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"c9a68cfb02a19a6c065e51f9e57e2959"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c9a68cfb02a19a6c065e51f9e57e2959","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9a68cfb02a19a6c065e51f9e57e2959"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.075849,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c9a68cfb02a19a6c065e51f9e57e2959","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c9a68cfb02a19a6c065e51f9e57e2959","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"a14a11ba-276a-4483-b0ff-497505ae2822","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.7566953} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c9a68cfb02a19a6c065e51f9e57e2959","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9a68cfb02a19a6c065e51f9e57e2959"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2dced898-5676-4b93-971b-921083a47097? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c9a68cfb02a19a6c065e51f9e57e2959"} device-1 | {"level":"info","message":"GET /devices/2dced898-5676-4b93-971b-921083a47097? 200 15ms","method":"GET","requestID":"c9a68cfb02a19a6c065e51f9e57e2959","responseTime":15,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"1b1e9a21406a6593068078c1c13292f7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1b1e9a21406a6593068078c1c13292f7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1b1e9a21406a6593068078c1c13292f7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.184234,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b1e9a21406a6593068078c1c13292f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b1e9a21406a6593068078c1c13292f7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to run experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to book experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully booked experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916158,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736562,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"2f242385-7a9b-44fa-a74c-7fea8a90a9cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.824046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"6ab00320-5b6a-45f4-a00a-7376d26426df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.8255363} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? 200 19ms","method":"GET","requestID":"2f16cb70-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2dced898-5676-4b93-971b-921083a47097? 200 19ms","method":"GET","requestID":"2f171990-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Setting up experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully set up experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully running experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f21a0e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.858608,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.730334,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60356","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a428ff1c-4880-44ef-9a2f-a369252bf7ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.896175} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"f9d4c709-90be-421b-9fb2-a1f078587bcf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.896486} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60356","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.737079,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"806c6ec3-b65e-4556-87cc-40ec5f7b23f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.8981242} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f21a0e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","rebac_allow":false,"scope_allow":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":"2f21a0e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3154bf1-1a79-45b2-8506-d95ae866708e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3154bf1-1a79-45b2-8506-d95ae866708e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7bad5e2d-370e-496c-bb66-12d6ac855166","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9031677} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b92ee60-05ad-497a-9ea1-9884dada41d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9037201} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"1b1e9a21406a6593068078c1c13292f7","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? 200 22ms","method":"GET","requestID":"2f212bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f21a0e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling 200 19ms","method":"POST","requestID":"2f21a0e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2dced898-5676-4b93-971b-921083a47097? 200 21ms","method":"GET","requestID":"2f2179d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f257170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f25bf90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"635ab3ae-2d03-47b6-a7c0-6dd6633d7f82","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9171848} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1b1e9a21406a6593068078c1c13292f7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.946184,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"1b1e9a21406a6593068078c1c13292f7","responseTime":148,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f257170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","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":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b1e9a21406a6593068078c1c13292f7"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2f257170-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e0f9710-269e-4be2-ac4f-f9a3034fe77d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9203093} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.826016,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f25bf90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","rebac_allow":false,"scope_allow":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":"2f25bf90-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"38307930e80e787fe23e3d931e815938"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"38307930e80e787fe23e3d931e815938","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38307930e80e787fe23e3d931e815938"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f257170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/signaling 200 17ms","method":"POST","requestID":"2f257170-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f25bf90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling 200 16ms","method":"POST","requestID":"2f25bf90-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781928,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38307930e80e787fe23e3d931e815938","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38307930e80e787fe23e3d931e815938","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f28ccd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"14025d12-6cf2-4352-bc21-9e20d6ae510f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9344594} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"38307930e80e787fe23e3d931e815938","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3617b51b-0f5d-478e-a7c7-2947c2cffdcb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.937597} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.272645,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38307930e80e787fe23e3d931e815938"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f28ccd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f28ccd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? 200 13ms","method":"GET","requestID":"38307930e80e787fe23e3d931e815938","responseTime":13,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38307930e80e787fe23e3d931e815938"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f28ccd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/signaling 200 9ms","method":"POST","requestID":"2f28ccd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw","level":"info","message":"auth send jwt","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768698,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60340","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.601978,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60356","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60356","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656688,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ee63ada846d0f20c9d1f7bb22bd5b197","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.102549064Z"}]},"request_id":"1fde8677-28bf-46a1-b890-ad1a0b176659","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9542818} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"415e35ff-014a-4f7f-9426-872cb0eebe91","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.956893} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:27.153087452Z"}]},"request_id":"52aba6cb-0c89-4d78-a60a-d598ac2ed971","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.9589062} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00? 200 17ms","method":"GET","requestID":"2f2a7a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2dced898-5676-4b93-971b-921083a47097? 200 18ms","method":"GET","requestID":"2f2aa190-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197"} device-1 | {"level":"info","message":"GET /devices/2dced898-5676-4b93-971b-921083a47097? 200 17ms","method":"GET","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197","responseTime":17,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Building connection plan","requestID":"1b1e9a21406a6593068078c1c13292f7"} gateway-1 | {"time_local":"10/Oct/2024:06:16:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2dced898-5676-4b93-971b-921083a47097? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee63ada846d0f20c9d1f7bb22bd5b197"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"1b212a93-0c88-489a-9691-92b2607371e9"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"6fb88fa9-1fe5-4b04-b6f3-7b19f8b55974"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"553156e5-4a5b-481a-9790-8fbadb6b9481"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1b1e9a21406a6593068078c1c13292f7"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/2dced898-5676-4b93-971b-921083a47097"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1b1e9a21406a6593068078c1c13292f7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.688715,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540987,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk4N30.s1VlGyVB8TPhnu-EwziSyLlmZERaNOeDV_CH9-crdXw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f615caa0-07c7-49fa-99c8-ab76791567dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.976698} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2ba1f3c-41a5-4f95-8762-62ddfb9fa0f5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540987.977031} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b'","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b'","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} 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":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5","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":"2f2dd5e0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1b1e9a21406a6593068078c1c13292f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f359e10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:28Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42dbd9f5-8f2e-4b57-bc61-d2b6fe279eff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540988.0221524} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.683341,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f359e10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f359e10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f359e10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling 200 9ms","method":"POST","requestID":"2f359e10-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f374bc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:28Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea006f2e-09e1-405c-9b02-458183163fdc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540988.0320995} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.283457,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f374bc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f374bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f374bc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/signaling 200 8ms","method":"POST","requestID":"2f374bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/signaling"} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"43f19994e62b283747d215e044913b1a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"43f19994e62b283747d215e044913b1a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/2dced898-5676-4b93-971b-921083a47097"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"}}},"level":"info","message":"received a callback","requestID":"43f19994e62b283747d215e044913b1a"} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"43f19994e62b283747d215e044913b1a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"43f19994e62b283747d215e044913b1a"} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","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/1b1f1225-d451-4fad-8f7c-ee05c9e1094b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f8e7dab9d9b489dfbbb57c092825c54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2f8e7dab9d9b489dfbbb57c092825c54","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2dced898-5676-4b93-971b-921083a47097"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"}}},"level":"info","message":"received a callback","requestID":"2f8e7dab9d9b489dfbbb57c092825c54"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"30732720-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b1f1225-d451-4fad-8f7c-ee05c9e1094b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e7bb3af-bc23-43df-9c4e-fa1cbc531d34","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.1049416} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.113684,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"30732720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b","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":"30732720-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"30732720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b 200 12ms","method":"GET","requestID":"30732720-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"2f8e7dab9d9b489dfbbb57c092825c54","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"2f8e7dab9d9b489dfbbb57c092825c54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30798fc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffa777e1-5b14-4f68-abe2-e08606d7c70f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.1455014} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.252642,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"30798fc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"30798fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30798fc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling 200 10ms","method":"POST","requestID":"30798fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"307b6480-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab90e722-299f-4d34-8aa9-e2efff62f78d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.157315} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82251,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"307b6480-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"307b6480-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"307b6480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/signaling 200 9ms","method":"POST","requestID":"307b6480-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8","level":"info","message":"auth send jwt","requestID":"1601b2e3ccad733a2e7cb84614da7e8d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1601b2e3ccad733a2e7cb84614da7e8d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","requestID":"1601b2e3ccad733a2e7cb84614da7e8d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.22902,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1601b2e3ccad733a2e7cb84614da7e8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540990,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1601b2e3ccad733a2e7cb84614da7e8d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","requestID":"1601b2e3ccad733a2e7cb84614da7e8d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1601b2e3ccad733a2e7cb84614da7e8d"} experiment-1 | {"level":"info","message":"GET /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e 200 17ms","method":"GET","requestID":"1601b2e3ccad733a2e7cb84614da7e8d","responseTime":17,"status":200,"url":"/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8","level":"info","message":"auth send jwt","requestID":"796d453e10c70f756bd75421b0656c5b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"796d453e10c70f756bd75421b0656c5b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","requestID":"796d453e10c70f756bd75421b0656c5b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.25582,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"796d453e10c70f756bd75421b0656c5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540990,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"796d453e10c70f756bd75421b0656c5b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Attempting to finish experiment","requestID":"796d453e10c70f756bd75421b0656c5b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"30999ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.261044,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"30999ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540990,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30999ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2dced898-5676-4b93-971b-921083a47097","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d24c42eb-68b1-404c-8d81-7a0f50e60b00","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b1f1225-d451-4fad-8f7c-ee05c9e1094b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b1f1225-d451-4fad-8f7c-ee05c9e1094b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"c88f6b24-8ed6-44bf-b7bb-a5ad7898783f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.3714752} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a83e61ad-b036-412a-a0b1-997aef26c9a4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.3717878} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0e73a605bca591cd3622fbc8aac3d1cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"30999ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0e73a605bca591cd3622fbc8aac3d1cc","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f244dbbe72166e37edd8b82985bfd64","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5f244dbbe72166e37edd8b82985bfd64","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2dced898-5676-4b93-971b-921083a47097"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"}}},"level":"info","message":"received a callback","requestID":"0e73a605bca591cd3622fbc8aac3d1cc"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2dced898-5676-4b93-971b-921083a47097"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"}}},"level":"info","message":"received a callback","requestID":"5f244dbbe72166e37edd8b82985bfd64"} device-1 | {"data":{"peerconnection":"1b1f1225-d451-4fad-8f7c-ee05c9e1094b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"30999ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b 204 45ms","method":"DELETE","requestID":"30999ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":45,"status":204,"url":"/peerconnections/1b1f1225-d451-4fad-8f7c-ee05c9e1094b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"},"level":"info","message":"Successfully finished experiment","requestID":"796d453e10c70f756bd75421b0656c5b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30a49760-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd24c42eb-68b1-404c-8d81-7a0f50e60b00","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"309bd96a-7416-42ae-aff6-db28dd328791","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.4303207} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.959919,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"30a49760-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00","object_type":"device","rebac_allow":false,"scope_allow":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":"30a49760-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3154bf1-1a79-45b2-8506-d95ae866708e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3154bf1-1a79-45b2-8506-d95ae866708e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"7fe06457-6231-46a7-89a7-571b4a278023","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.4370914} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"843d491d-5771-4bc3-9763-5379ab5ea7b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.4376857} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"796d453e10c70f756bd75421b0656c5b","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30a49760-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling 200 23ms","method":"POST","requestID":"30a49760-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/d24c42eb-68b1-404c-8d81-7a0f50e60b00/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30a88f00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2dced898-5676-4b93-971b-921083a47097","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a5a04a8-7108-47ad-aab0-4ab6b251f48b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.456728} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.307741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"30a88f00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2dced898-5676-4b93-971b-921083a47097","object_type":"device","rebac_allow":false,"scope_allow":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":"30a88f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30a88f00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2dced898-5676-4b93-971b-921083a47097/signaling 200 17ms","method":"POST","requestID":"30a88f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/2dced898-5676-4b93-971b-921083a47097/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e","requestID":"796d453e10c70f756bd75421b0656c5b"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e 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":"796d453e10c70f756bd75421b0656c5b"} experiment-1 | {"level":"info","message":"DELETE /experiments/d3154bf1-1a79-45b2-8506-d95ae866708e 204 175ms","method":"DELETE","requestID":"796d453e10c70f756bd75421b0656c5b","responseTime":175,"status":204,"url":"/experiments/d3154bf1-1a79-45b2-8506-d95ae866708e"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.823","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"515878e17641f900ad773c35984e6ca6"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.814","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"449ba5df8df85f4fb158232db3027f8a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"0e73a605bca591cd3622fbc8aac3d1cc","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"0e73a605bca591cd3622fbc8aac3d1cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8","level":"info","message":"auth send jwt","requestID":"8b10221019bfcef44c4b78cf4b66285c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8b10221019bfcef44c4b78cf4b66285c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"5f244dbbe72166e37edd8b82985bfd64","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f244dbbe72166e37edd8b82985bfd64"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2dced898-5676-4b93-971b-921083a47097' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"8b10221019bfcef44c4b78cf4b66285c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.834688,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8b10221019bfcef44c4b78cf4b66285c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540990,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","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/d24c42eb-68b1-404c-8d81-7a0f50e60b00' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b12dc91b-7338-4cfe-afd1-e9a048d9be56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5383468} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4dbc9a7-764a-4dc8-a025-c06a838fda55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5452094} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7dcc8dd0-61f0-40fb-859b-cef884387b28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5559049} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1b4c6d0-9157-49c3-b5c6-e39d4e7cadf9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5560436} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"1a04a542-5f46-47d4-a5c8-15e94ccd4ac3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.561194} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8b10221019bfcef44c4b78cf4b66285c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b10221019bfcef44c4b78cf4b66285c"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"8b10221019bfcef44c4b78cf4b66285c","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8","level":"info","message":"auth send jwt","requestID":"13ca382478d8fc2ddb2f3163907e7b9d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"13ca382478d8fc2ddb2f3163907e7b9d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.706189,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"13ca382478d8fc2ddb2f3163907e7b9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540990,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5MH0.JOuUqFNVqrkFHev3xeAvwSXm2MDAqXlr3IJ0HmPrz-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"41efe8c5-9ff6-45bd-9004-fd535734f2fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5922008} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d27e0bc4-71ba-444a-b220-3a36c99c0c1f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.5972784} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a76071ce-744f-43cd-bc37-3c9c70dd6973","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.6083136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2469c7f5-f240-4bc7-8d70-fbb44a9fbee3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.6084273} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"a590a705-b725-4771-8624-78968d1263ff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540990.6135988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"13ca382478d8fc2ddb2f3163907e7b9d"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"13ca382478d8fc2ddb2f3163907e7b9d","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13ca382478d8fc2ddb2f3163907e7b9d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1890ec3575a543557440732b7c380315","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1890ec3575a543557440732b7c380315","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/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":"1890ec3575a543557440732b7c380315"} device-1 | {"level":"info","message":"OPTIONS /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/websocket 200 2ms","method":"OPTIONS","requestID":"1890ec3575a543557440732b7c380315","responseTime":2,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"d475ba383eff0c7bb7e3d06d60c82df9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d475ba383eff0c7bb7e3d06d60c82df9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d475ba383eff0c7bb7e3d06d60c82df9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.508144,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d475ba383eff0c7bb7e3d06d60c82df9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d475ba383eff0c7bb7e3d06d60c82df9","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4a2d4c45b9f97cbf5896d5289266228","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c4a2d4c45b9f97cbf5896d5289266228","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bbea3515-7375-495f-9399-85f65fe96db8/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":"c4a2d4c45b9f97cbf5896d5289266228"} device-1 | {"level":"info","message":"OPTIONS /devices/bbea3515-7375-495f-9399-85f65fe96db8/websocket 200 1ms","method":"OPTIONS","requestID":"c4a2d4c45b9f97cbf5896d5289266228","responseTime":1,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/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":"d475ba383eff0c7bb7e3d06d60c82df9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d475ba383eff0c7bb7e3d06d60c82df9"} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/websocket 200 24ms","method":"POST","requestID":"d475ba383eff0c7bb7e3d06d60c82df9","responseTime":24,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"651a108d599f4fc64715cc0e7ebac2bc"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"651a108d599f4fc64715cc0e7ebac2bc","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"651a108d599f4fc64715cc0e7ebac2bc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728595,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"651a108d599f4fc64715cc0e7ebac2bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"651a108d599f4fc64715cc0e7ebac2bc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"651a108d599f4fc64715cc0e7ebac2bc"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"651a108d599f4fc64715cc0e7ebac2bc"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/websocket 200 15ms","method":"POST","requestID":"651a108d599f4fc64715cc0e7ebac2bc","responseTime":15,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef63cbdd808b3637cc04520ed06777dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef63cbdd808b3637cc04520ed06777dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ef63cbdd808b3637cc04520ed06777dc"} device-1 | {"level":"info","message":"OPTIONS /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 1ms","method":"OPTIONS","requestID":"ef63cbdd808b3637cc04520ed06777dc","responseTime":1,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"a058405ffb9f4352d0c82487d453bd04"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a058405ffb9f4352d0c82487d453bd04","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a058405ffb9f4352d0c82487d453bd04"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"de7ac4b3ba31f26b2f518f212149125b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"de7ac4b3ba31f26b2f518f212149125b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bbea3515-7375-495f-9399-85f65fe96db8? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"de7ac4b3ba31f26b2f518f212149125b"} device-1 | {"level":"info","message":"OPTIONS /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 2ms","method":"OPTIONS","requestID":"de7ac4b3ba31f26b2f518f212149125b","responseTime":2,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187156,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a058405ffb9f4352d0c82487d453bd04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a058405ffb9f4352d0c82487d453bd04","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"a27703e862aef8f0536a4ee70c9e0623"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a27703e862aef8f0536a4ee70c9e0623","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a27703e862aef8f0536a4ee70c9e0623"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"ba243ef5-5ba4-4d9b-bc64-8206a3608784","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.6607792} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a058405ffb9f4352d0c82487d453bd04","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a27703e862aef8f0536a4ee70c9e0623","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a27703e862aef8f0536a4ee70c9e0623","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ca73c89-3dd9-4e36-9150-73d47eddfd75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.6676183} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a058405ffb9f4352d0c82487d453bd04","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"7ad346a1-1ba1-485a-be6a-462c0add8a7e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.6727488} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a27703e862aef8f0536a4ee70c9e0623","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"944c258b-36ab-44bc-9636-2bab1e658707","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.6802716} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a27703e862aef8f0536a4ee70c9e0623","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"d7197611-7a65-4c12-ab45-7c3e058f8280","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.682423} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a058405ffb9f4352d0c82487d453bd04","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a058405ffb9f4352d0c82487d453bd04"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a058405ffb9f4352d0c82487d453bd04"} device-1 | {"level":"info","message":"PATCH /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 40ms","method":"PATCH","requestID":"a058405ffb9f4352d0c82487d453bd04","responseTime":40,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"05eb32f1-97b1-41d1-aabf-ed421d1230c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.7009969} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a27703e862aef8f0536a4ee70c9e0623","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a27703e862aef8f0536a4ee70c9e0623"} device-1 | {"level":"info","message":"PATCH /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 46ms","method":"PATCH","requestID":"a27703e862aef8f0536a4ee70c9e0623","responseTime":46,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bbea3515-7375-495f-9399-85f65fe96db8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a27703e862aef8f0536a4ee70c9e0623"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"d705771888febc91feb3f91c3325b190"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d705771888febc91feb3f91c3325b190","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d705771888febc91feb3f91c3325b190"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084775,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d705771888febc91feb3f91c3325b190","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d705771888febc91feb3f91c3325b190","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"a73b4d7c-85bc-4f0f-880f-b5261d122278","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.729186} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d705771888febc91feb3f91c3325b190","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d705771888febc91feb3f91c3325b190"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d705771888febc91feb3f91c3325b190"} device-1 | {"level":"info","message":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 16ms","method":"GET","requestID":"d705771888febc91feb3f91c3325b190","responseTime":16,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"2caa8832c3efcb41c75591e83c35986b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2caa8832c3efcb41c75591e83c35986b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2caa8832c3efcb41c75591e83c35986b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180894,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2caa8832c3efcb41c75591e83c35986b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2caa8832c3efcb41c75591e83c35986b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"e6e23b53-d317-4568-a91e-893892bfca29","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.7534714} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2caa8832c3efcb41c75591e83c35986b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2caa8832c3efcb41c75591e83c35986b"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2caa8832c3efcb41c75591e83c35986b"} device-1 | {"level":"info","message":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 17ms","method":"GET","requestID":"2caa8832c3efcb41c75591e83c35986b","responseTime":17,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"f0994d023fff2236eb1330278168f20a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f0994d023fff2236eb1330278168f20a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f0994d023fff2236eb1330278168f20a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.199666,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f0994d023fff2236eb1330278168f20a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0994d023fff2236eb1330278168f20a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to run experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to book experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully booked experiment","requestID":"f0994d023fff2236eb1330278168f20a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78161,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.355394,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"93b9b9c2-8bb6-403a-ad3e-c231029c69aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.8176556} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"ac45cc59-83ce-4aee-b956-6bc560996436","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.823051} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 18ms","method":"GET","requestID":"32105c60-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 21ms","method":"GET","requestID":"3210aa80-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Setting up experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully set up experiment","requestID":"f0994d023fff2236eb1330278168f20a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"321b31d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully running experiment","requestID":"f0994d023fff2236eb1330278168f20a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768225,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835591,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e6b7565-90f7-4a9b-963e-8c00130f364d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.8888793} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"21d2575f-3232-496f-91b0-79fcc035b6fa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.890327} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.827167,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"32bcfc15-48bd-416d-85cc-9833bfa5c298","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.891319} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"321b31d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","rebac_allow":false,"scope_allow":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":"321b31d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0164c115-12d2-421b-976a-41a9636f997c#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0164c115-12d2-421b-976a-41a9636f997c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"35cdd274-dd94-45d4-9906-957a62e7f4dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9001863} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"321b31d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f52f290-140d-4f95-9956-96ca02099136","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.900456} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling 200 24ms","method":"POST","requestID":"321b31d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 28ms","method":"GET","requestID":"321abca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f0994d023fff2236eb1330278168f20a","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 28ms","method":"GET","requestID":"321b0ac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"321f7790-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32203ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7df0b8f3-5896-4273-8343-69b622516f8f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9103892} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.103281,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f0994d023fff2236eb1330278168f20a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"321f7790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","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":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"f0994d023fff2236eb1330278168f20a","responseTime":147,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"321f7790-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49909293-26dc-4ce6-b7e7-5591c910240b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9148252} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.283835,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"32203ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","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":"321f7790-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"32203ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling 200 13ms","method":"POST","requestID":"321f7790-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"e2f1dc418b05de8abca6ce4c9741531c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2f1dc418b05de8abca6ce4c9741531c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2f1dc418b05de8abca6ce4c9741531c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32203ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01236,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling 200 16ms","method":"POST","requestID":"32203ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e2f1dc418b05de8abca6ce4c9741531c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2f1dc418b05de8abca6ce4c9741531c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3222fa00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"96d6f614-e056-4902-8411-876b193d1c58","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.930048} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2f1dc418b05de8abca6ce4c9741531c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45f05a68-5424-4afb-a264-c582febb1e7c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9328926} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.784355,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2f1dc418b05de8abca6ce4c9741531c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3222fa00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3222fa00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2f1dc418b05de8abca6ce4c9741531c"} device-1 | {"level":"info","message":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 14ms","method":"GET","requestID":"e2f1dc418b05de8abca6ce4c9741531c","responseTime":14,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3222fa00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling 200 9ms","method":"POST","requestID":"3222fa00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0","level":"info","message":"auth send jwt","requestID":"abda1de4469b575bd3a567cdea1fa705"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"abda1de4469b575bd3a567cdea1fa705","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"abda1de4469b575bd3a567cdea1fa705"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.604054,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.842156,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.528979,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"abda1de4469b575bd3a567cdea1fa705","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"abda1de4469b575bd3a567cdea1fa705","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.555875829Z"}]},"request_id":"3af7ca71-638c-4ebe-b9ab-df8773018bab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9483147} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"119cfb5b-f28e-4873-abc9-d4e2b292b1cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9488885} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:30.608290490Z"}]},"request_id":"d8520de6-bb86-4c1b-8fdf-672a52de6691","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9519618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"abda1de4469b575bd3a567cdea1fa705","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec? 200 16ms","method":"GET","requestID":"3224a7b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 15ms","method":"GET","requestID":"3224f5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"abda1de4469b575bd3a567cdea1fa705"} gateway-1 | {"time_local":"10/Oct/2024:06:16:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abda1de4469b575bd3a567cdea1fa705"} device-1 | {"level":"info","message":"GET /devices/bbea3515-7375-495f-9399-85f65fe96db8? 200 15ms","method":"GET","requestID":"abda1de4469b575bd3a567cdea1fa705","responseTime":15,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Building connection plan","requestID":"f0994d023fff2236eb1330278168f20a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"05adc561-2dba-4d4a-8d72-d468d2c9ee27"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"bdd619bf-015b-4d54-888a-cb3546014afd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"7b40df77-23d3-4f74-8951-bd8e5a1b9778"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f0994d023fff2236eb1330278168f20a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"3227b4f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"3227b4f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"3227b4f0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726?id=3d64246d-f14b-49d2-95a6-7888431dfb25","ws://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726?id=5d460c57-5912-44fc-a88d-b9676d5e25e3"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f0994d023fff2236eb1330278168f20a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.014501,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540992,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Mn0.MZJzYEZ65Tx29EXrm8hU6QFJUCD96e07EmgGbNfOJF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"dccaa165-c1e0-4d70-9ac4-51a707dddc89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.9747574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bfc5fb9-19b4-4cae-aaaf-efe05233543c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540992.975125} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d'","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d'","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"32285130-86cf-11ef-b00e-2fb111b9dda5"} 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":"32285130-86cf-11ef-b00e-2fb111b9dda5","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":"32285130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"322df680-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\"","requestID":"322df680-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"322df680-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"322e44a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d64246d-f14b-49d2-95a6-7888431dfb25\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\"","requestID":"322e44a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"322e44a0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d8269b092fd19712aa9475858b276d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5d8269b092fd19712aa9475858b276d7","responseTime":3,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"}}},"level":"info","message":"received a callback","requestID":"5d8269b092fd19712aa9475858b276d7"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"5d8269b092fd19712aa9475858b276d7","responseTime":15,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.024","http_referrer":"","http_user_agent":"node-fetch","requestID":"5d8269b092fd19712aa9475858b276d7"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f0994d023fff2236eb1330278168f20a"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3233c2e0-86cf-11ef-b00e-2fb111b9dda5"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d' to 'http://localhost/callbacks/experiment'"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ed956aa-88c9-4ed4-b9e8-25d28373c08c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.0431786} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b5f78f9ec1ddba7713a9f3590cc47c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3b5f78f9ec1ddba7713a9f3590cc47c8","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912008,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3233c2e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3233c2e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"}}},"level":"info","message":"received a callback","requestID":"3b5f78f9ec1ddba7713a9f3590cc47c8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3235beb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3233c2e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling 200 16ms","method":"POST","requestID":"3233c2e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F469fbbdb-3df8-49ef-a468-27b6ead3b22d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51b60aae-dd38-4ff5-b2f8-4036e9b52743","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.056156} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.721172,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3236a910-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3235beb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","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":"3235beb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3235beb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40302fe1-1219-44a9-9061-bef7e3d3fa02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.062001} device-1 | {"level":"info","message":"GET /peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d 200 9ms","method":"GET","requestID":"3235beb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.543298,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3236a910-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3236a910-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3236a910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling 200 9ms","method":"POST","requestID":"3236a910-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"3b5f78f9ec1ddba7713a9f3590cc47c8","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"3b5f78f9ec1ddba7713a9f3590cc47c8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3239dd60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f0cc672-e424-42ba-ab80-310d1edb2910","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.0836532} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.938384,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3239dd60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3239dd60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3239dd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling 200 10ms","method":"POST","requestID":"3239dd60-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"323bb220-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d5c5a49-4bb8-460d-a793-72d133568ab2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.0966344} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.999558,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"323bb220-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"323bb220-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"323bb220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling 200 11ms","method":"POST","requestID":"323bb220-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI","level":"info","message":"auth send jwt","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0164c115-12d2-421b-976a-41a9636f997c","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.144467,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540993,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0164c115-12d2-421b-976a-41a9636f997c","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0164c115-12d2-421b-976a-41a9636f997c HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab"} experiment-1 | {"level":"info","message":"GET /experiments/0164c115-12d2-421b-976a-41a9636f997c 200 15ms","method":"GET","requestID":"e752a528ed13ed5ce8e3bf3ad6e6b6ab","responseTime":15,"status":200,"url":"/experiments/0164c115-12d2-421b-976a-41a9636f997c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI","level":"info","message":"auth send jwt","requestID":"e6bd9acba398d5739263d347d4190fc4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e6bd9acba398d5739263d347d4190fc4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0164c115-12d2-421b-976a-41a9636f997c","requestID":"e6bd9acba398d5739263d347d4190fc4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.285817,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e6bd9acba398d5739263d347d4190fc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540993,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e6bd9acba398d5739263d347d4190fc4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Attempting to finish experiment","requestID":"e6bd9acba398d5739263d347d4190fc4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.234227,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540993,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b529f9ba-db92-431d-bee9-53ede3d30726?id=3d64246d-f14b-49d2-95a6-7888431dfb25 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.538","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"81f4eaebb4707cdf3dee744676d87a23"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","device":"4d4ebeb5-e953-4196-a201-7ccd46f302ec","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b529f9ba-db92-431d-bee9-53ede3d30726?id=5d460c57-5912-44fc-a88d-b9676d5e25e3 HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.540","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2044fd90849b3efc0ea2d52edd456d06"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d","device":"bbea3515-7375-495f-9399-85f65fe96db8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3d64246d-f14b-49d2-95a6-7888431dfb25\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3d64246d-f14b-49d2-95a6-7888431dfb25\" from room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" in room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5d460c57-5912-44fc-a88d-b9676d5e25e3\" from room \"http://localhost/rooms/b529f9ba-db92-431d-bee9-53ede3d30726\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"73729ab51823dbee9aa52378f910b2a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"73729ab51823dbee9aa52378f910b2a5","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2862255b0625a6ba4e5335fc11fed445","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"}}},"level":"info","message":"received a callback","requestID":"73729ab51823dbee9aa52378f910b2a5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F469fbbdb-3df8-49ef-a468-27b6ead3b22d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F469fbbdb-3df8-49ef-a468-27b6ead3b22d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a67ad22a-157d-46ae-a758-2c63c7a0b039","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.5452428} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2862255b0625a6ba4e5335fc11fed445","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"}}},"level":"info","message":"received a callback","requestID":"2862255b0625a6ba4e5335fc11fed445"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20e925bf-a2ed-450f-8927-475e9fbcc552","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.5456007} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"469fbbdb-3df8-49ef-a468-27b6ead3b22d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d 204 70ms","method":"DELETE","requestID":"327d9d20-86cf-11ef-b00e-2fb111b9dda5","responseTime":70,"status":204,"url":"/peerconnections/469fbbdb-3df8-49ef-a468-27b6ead3b22d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0164c115-12d2-421b-976a-41a9636f997c"},"level":"info","message":"Successfully finished experiment","requestID":"e6bd9acba398d5739263d347d4190fc4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"328c4320-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d4ebeb5-e953-4196-a201-7ccd46f302ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be6d5b9b-c299-4a0c-8e79-ae5aa735cac7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.626178} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.744186,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"328c4320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec","object_type":"device","rebac_allow":false,"scope_allow":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":"328c4320-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"328c4320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling 200 15ms","method":"POST","requestID":"328c4320-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/4d4ebeb5-e953-4196-a201-7ccd46f302ec/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"328f0240-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0164c115-12d2-421b-976a-41a9636f997c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0164c115-12d2-421b-976a-41a9636f997c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"00c71ddb-a8da-4b5c-8866-c852c9793594","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.6411657} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"435ccca1-2042-47a0-a8b4-2bc633a6eafd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.641554} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"e6bd9acba398d5739263d347d4190fc4","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbea3515-7375-495f-9399-85f65fe96db8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5f80982-32c4-4970-98bd-a890b3e9166d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.6456048} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.118971,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"328f0240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8","object_type":"device","rebac_allow":false,"scope_allow":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":"328f0240-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"328f0240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling 200 16ms","method":"POST","requestID":"328f0240-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/bbea3515-7375-495f-9399-85f65fe96db8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0164c115-12d2-421b-976a-41a9636f997c","requestID":"e6bd9acba398d5739263d347d4190fc4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0164c115-12d2-421b-976a-41a9636f997c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.206","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6bd9acba398d5739263d347d4190fc4"} experiment-1 | {"level":"info","message":"DELETE /experiments/0164c115-12d2-421b-976a-41a9636f997c 204 202ms","method":"DELETE","requestID":"e6bd9acba398d5739263d347d4190fc4","responseTime":202,"status":204,"url":"/experiments/0164c115-12d2-421b-976a-41a9636f997c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 166ms","method":"POST","requestID":"73729ab51823dbee9aa52378f910b2a5","responseTime":166,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.169","http_referrer":"","http_user_agent":"node-fetch","requestID":"73729ab51823dbee9aa52378f910b2a5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 166ms","method":"POST","requestID":"2862255b0625a6ba4e5335fc11fed445","responseTime":166,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.170","http_referrer":"","http_user_agent":"node-fetch","requestID":"2862255b0625a6ba4e5335fc11fed445"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI","level":"info","message":"auth send jwt","requestID":"b7fc9bf24bf66f7a9211a1f59b827338"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b7fc9bf24bf66f7a9211a1f59b827338"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"1.097","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7896c9cee79b2e0eb53c9e1720b66531"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.89111,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b7fc9bf24bf66f7a9211a1f59b827338","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540993,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.121","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"86ddc04d32a76e494a9629be90f188e9"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bbea3515-7375-495f-9399-85f65fe96db8' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fa6adba5-f5f0-4401-9424-7ac3862a1c4c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.7392795} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93206cfb-f24c-4ccb-9a5b-b8d490ccc89a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.7440345} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","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/4d4ebeb5-e953-4196-a201-7ccd46f302ec' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"225aabb6-26cf-4650-9e67-3aa34296001b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.754856} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49b28e35-5b30-4381-a8ef-c25cedefcba9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.7551494} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"967b5c57-0043-4db8-91fb-d60d69d6e54a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.7590427} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b7fc9bf24bf66f7a9211a1f59b827338"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b7fc9bf24bf66f7a9211a1f59b827338","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7fc9bf24bf66f7a9211a1f59b827338"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI","level":"info","message":"auth send jwt","requestID":"51bd6f763b949e45a18db05a20ffb3eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"51bd6f763b949e45a18db05a20ffb3eb"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.649107,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"51bd6f763b949e45a18db05a20ffb3eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540993,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5M30.BgE4UqP4BS_u1Rudf7bgYAc-VaUBS7lxz7BVQhrLfnI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"998f89f1-ac4c-4ed5-b84c-2ce66babb0bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.788499} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"667275dd-c841-4b31-b78f-62cba1b14f72","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.7925932} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"58303130-09fd-4c58-a7ea-7f902ee2a531","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.804127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9274cf77-45c0-4b5b-a47f-826a86e3c2eb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.8042278} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"ba470296-3191-45b7-ba64-36a625ae1304","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540993.8080845} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"51bd6f763b949e45a18db05a20ffb3eb"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"51bd6f763b949e45a18db05a20ffb3eb","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51bd6f763b949e45a18db05a20ffb3eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NH0.mGFZ3JVJVZdRfvUCmChKHOjRneidpc1DwKxaARkUFjM","level":"info","message":"auth send jwt","requestID":"af74a3a9d21b456caa377721000afb12"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af74a3a9d21b456caa377721000afb12","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"af74a3a9d21b456caa377721000afb12"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745167,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"af74a3a9d21b456caa377721000afb12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540994,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NH0.mGFZ3JVJVZdRfvUCmChKHOjRneidpc1DwKxaARkUFjM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af74a3a9d21b456caa377721000afb12","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"fef2b612-3325-427f-a0b7-6a2fb4b92d2c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540994.2945962} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af74a3a9d21b456caa377721000afb12","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00e58545-3c2b-430c-b40e-d2b424f705db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540994.300049} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"af74a3a9d21b456caa377721000afb12","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"86ad9c6e-c284-44e8-923e-c6bd907954a3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540994.313118} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af74a3a9d21b456caa377721000afb12","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"af74a3a9d21b456caa377721000afb12"} device-1 | {"level":"info","message":"PATCH /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918 200 34ms","method":"PATCH","requestID":"af74a3a9d21b456caa377721000afb12","responseTime":34,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"} gateway-1 | {"time_local":"10/Oct/2024:06:16:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"af74a3a9d21b456caa377721000afb12"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NH0.mGFZ3JVJVZdRfvUCmChKHOjRneidpc1DwKxaARkUFjM","level":"info","message":"auth send jwt","requestID":"f217c892b4351a7dacf28a0bcc04c6ec"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f217c892b4351a7dacf28a0bcc04c6ec","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f217c892b4351a7dacf28a0bcc04c6ec"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145711,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f217c892b4351a7dacf28a0bcc04c6ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540994,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NH0.mGFZ3JVJVZdRfvUCmChKHOjRneidpc1DwKxaARkUFjM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f217c892b4351a7dacf28a0bcc04c6ec","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f217c892b4351a7dacf28a0bcc04c6ec"} gateway-1 | {"time_local":"10/Oct/2024:06:16:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f217c892b4351a7dacf28a0bcc04c6ec"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/websocket 200 18ms","method":"POST","requestID":"f217c892b4351a7dacf28a0bcc04c6ec","responseTime":18,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1d3d479542228978059514e29702f0bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1d3d479542228978059514e29702f0bb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/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":"1d3d479542228978059514e29702f0bb"} device-1 | {"level":"info","message":"OPTIONS /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/websocket 200 1ms","method":"OPTIONS","requestID":"1d3d479542228978059514e29702f0bb","responseTime":1,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk","level":"info","message":"auth send jwt","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343642,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/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":"88e8498b7b4d1a1e2a59d7061a80f3dd"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/websocket 200 21ms","method":"POST","requestID":"88e8498b7b4d1a1e2a59d7061a80f3dd","responseTime":21,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1d1eb2dec57a43a06b7b5755063cf8f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b1d1eb2dec57a43a06b7b5755063cf8f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1d1eb2dec57a43a06b7b5755063cf8f"} device-1 | {"level":"info","message":"OPTIONS /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 1ms","method":"OPTIONS","requestID":"b1d1eb2dec57a43a06b7b5755063cf8f","responseTime":2,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk","level":"info","message":"auth send jwt","requestID":"6d70cdf1b10217927c4fc1d7095f1217"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d70cdf1b10217927c4fc1d7095f1217","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6d70cdf1b10217927c4fc1d7095f1217"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333738,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d70cdf1b10217927c4fc1d7095f1217","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d70cdf1b10217927c4fc1d7095f1217","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"1df01d84-5835-49c4-95da-a9f09348f010","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540995.902027} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d70cdf1b10217927c4fc1d7095f1217","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be0d0ead-380e-44f4-936d-2489d565e6d4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540995.9091048} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6d70cdf1b10217927c4fc1d7095f1217","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"fc6ca31c-4313-4ca7-8ef2-7fae8b42dc4e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540995.9210684} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d70cdf1b10217927c4fc1d7095f1217","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6d70cdf1b10217927c4fc1d7095f1217"} device-1 | {"level":"info","message":"PATCH /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 36ms","method":"PATCH","requestID":"6d70cdf1b10217927c4fc1d7095f1217","responseTime":36,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6d70cdf1b10217927c4fc1d7095f1217"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk","level":"info","message":"auth send jwt","requestID":"1b846d291cc4b844e71fea747a502fd5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1b846d291cc4b844e71fea747a502fd5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b846d291cc4b844e71fea747a502fd5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240578,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1b846d291cc4b844e71fea747a502fd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b846d291cc4b844e71fea747a502fd5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"ab4393b0-514f-4174-8652-e358660434ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540995.9502735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b846d291cc4b844e71fea747a502fd5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b846d291cc4b844e71fea747a502fd5"} device-1 | {"level":"info","message":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 17ms","method":"GET","requestID":"1b846d291cc4b844e71fea747a502fd5","responseTime":17,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b846d291cc4b844e71fea747a502fd5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk","level":"info","message":"auth send jwt","requestID":"927f34c7c1ff7bc5ed76ad978b08363c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"927f34c7c1ff7bc5ed76ad978b08363c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"927f34c7c1ff7bc5ed76ad978b08363c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21511,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"927f34c7c1ff7bc5ed76ad978b08363c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"927f34c7c1ff7bc5ed76ad978b08363c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"5d7e01da-19e4-4c05-b9e9-6225519ec795","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540995.9772508} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"927f34c7c1ff7bc5ed76ad978b08363c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"927f34c7c1ff7bc5ed76ad978b08363c"} device-1 | {"level":"info","message":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? 200 19ms","method":"GET","requestID":"927f34c7c1ff7bc5ed76ad978b08363c","responseTime":19,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"927f34c7c1ff7bc5ed76ad978b08363c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk","level":"info","message":"auth send jwt","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.282563,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ed07dd0035b78e45ccee4bfbb765f7bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to run experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to book experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully booked experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"a00c02c2-f489-409b-af88-86f836aa0a66","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.0457156} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"6cdfa6f5-e2ac-4aac-8df1-8283deec6a5b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.0470452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 18ms","method":"GET","requestID":"33fd1130-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? 200 17ms","method":"GET","requestID":"33fd5f50-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Setting up experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully set up experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3408a9f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully running experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286431,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242422,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.892072,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb795212-e16c-4b01-ac8d-a4c7fec0d989","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1200192} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3408a9f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"3408a9f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"f3743634-554a-49c6-8f50-09132490b093","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1261718} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"1c667942-040f-447e-84bb-df601e05d9b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1306422} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3408a9f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling 200 23ms","method":"POST","requestID":"3408a9f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"340cefb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 36ms","method":"GET","requestID":"34080db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? 200 37ms","method":"GET","requestID":"34085bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":37,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4f4ec01-d400-40e9-9444-71f0725ca660","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.147812} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F05f160a6-6eba-4000-8906-8f54626cfa2a#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F05f160a6-6eba-4000-8906-8f54626cfa2a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a4cb03bd-e839-411b-8974-10a5a9a91d2f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1481848} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff41ff02-8032-47da-86ce-093969161651","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1493206} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.601826,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"340cefb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","rebac_allow":false,"scope_allow":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":"340cefb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"340f1290-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"340cefb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling 200 20ms","method":"POST","requestID":"340cefb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d105a4bb-a99e-474e-8a5d-b2f938bf2b35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1595798} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150771,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"340f1290-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"340f1290-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"level":"info","message":"POST /experiments? 201 170ms","method":"POST","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf","responseTime":170,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"340f1290-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling 200 11ms","method":"POST","requestID":"340f1290-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34110e60-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"d52eda3c5d437713122784fae3336297"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d52eda3c5d437713122784fae3336297","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d52eda3c5d437713122784fae3336297"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"637c4ed1-e57a-48b1-9c82-829111de5613","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1721892} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.042975,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d52eda3c5d437713122784fae3336297","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d52eda3c5d437713122784fae3336297","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.802868,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34110e60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"34110e60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"999b49c2-87ca-4eda-be25-e7ecb3529d28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1766686} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34110e60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d52eda3c5d437713122784fae3336297","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling 200 11ms","method":"POST","requestID":"34110e60-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d52eda3c5d437713122784fae3336297"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d52eda3c5d437713122784fae3336297"} device-1 | {"level":"info","message":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 14ms","method":"GET","requestID":"d52eda3c5d437713122784fae3336297","responseTime":14,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611089,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.754825678Z"}]},"request_id":"75c28880-dd04-4607-acf1-f01703caa336","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1889033} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"0097d912-5bbc-4186-adae-4a12c9b77869","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1898508} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0? 200 13ms","method":"GET","requestID":"34130a30-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.371075,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? 200 15ms","method":"GET","requestID":"34135850-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Building connection plan","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"deaba6fb-e4bf-4dcf-a68f-8f5b59f05d03"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"fbc8d20b-6e26-414d-b007-68846008bd96"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"6b201446-b8e3-4fad-a13d-4bc034070edd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:33.804106749Z"}]},"request_id":"09c1fd69-4cec-46f0-9029-6a51d7164076","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.1974359} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"34161770-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"34161770-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"34161770-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc?id=0bdddb5c-b05a-434f-8aac-4e9ffb253c0f","ws://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc?id=d00ecd7d-6129-48f8-b48e-2f324508bdfa"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8"} device-1 | {"level":"info","message":"GET /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918? 200 14ms","method":"GET","requestID":"a5ee2a41885c66a4ba3d99a2951bd1f8","responseTime":14,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.701307,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540995,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5NX0.QRrZ8dcyuZL8vYY28uHq07ViGbewk4Bt88ZZPLfLcqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"dcdc3723-f2fb-46c9-8fe0-07584e69cd9f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.2155037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ca3b778-2b8b-45aa-a8e2-b966f0648e50","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.2157986} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54'","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54'","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} 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":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"3416b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"341c31f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\"","requestID":"341c31f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"341c31f0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1d8c4f9cbcd0516c9e69a413b62ae81c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"341cce30-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d00ecd7d-6129-48f8-b48e-2f324508bdfa\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\"","requestID":"341cce30-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"341cce30-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1d8c4f9cbcd0516c9e69a413b62ae81c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"}}},"level":"info","message":"received a callback","requestID":"1d8c4f9cbcd0516c9e69a413b62ae81c"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"1d8c4f9cbcd0516c9e69a413b62ae81c","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"1d8c4f9cbcd0516c9e69a413b62ae81c"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ed07dd0035b78e45ccee4bfbb765f7bf"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34218920-86cf-11ef-b00e-2fb111b9dda5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80b4c6e0-a477-4d82-b416-32c35b8d998e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.2789469} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.244558,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34218920-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34218920-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34218920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling 200 12ms","method":"POST","requestID":"34218920-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29158901265c8c1da3e40efb984627f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"29158901265c8c1da3e40efb984627f9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"}}},"level":"info","message":"received a callback","requestID":"29158901265c8c1da3e40efb984627f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3423d310-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa74011c-c4ee-4fff-acab-6fd86011b5c7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.2932703} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.508673,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"34249660-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3423d310-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3423d310-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fd0750d-1ea6-4dcd-914b-ccb0af37df54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8fbce553-ea0b-4aec-9140-446c2bc18a14","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.2980106} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3423d310-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling 200 9ms","method":"POST","requestID":"3423d310-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.174557,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34249660-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54","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":"34249660-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"34249660-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54 200 7ms","method":"GET","requestID":"34249660-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"29158901265c8c1da3e40efb984627f9","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"29158901265c8c1da3e40efb984627f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3427a3a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4cb59d1-cc8c-49f7-b880-6d0da386ab73","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.3183827} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.087179,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3427a3a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3427a3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3427a3a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling 200 9ms","method":"POST","requestID":"3427a3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34295150-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47c9b06c-baff-4c58-9343-bf5da4d68457","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.329648} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.02151,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34295150-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34295150-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34295150-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling 200 8ms","method":"POST","requestID":"34295150-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"a411a971c01fac67f1f0bbc614a2de7f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a411a971c01fac67f1f0bbc614a2de7f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","requestID":"a411a971c01fac67f1f0bbc614a2de7f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.261363,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a411a971c01fac67f1f0bbc614a2de7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a411a971c01fac67f1f0bbc614a2de7f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","requestID":"a411a971c01fac67f1f0bbc614a2de7f"} experiment-1 | {"level":"info","message":"GET /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a 200 15ms","method":"GET","requestID":"a411a971c01fac67f1f0bbc614a2de7f","responseTime":15,"status":200,"url":"/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a411a971c01fac67f1f0bbc614a2de7f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"7001942921273029a64f4b7cdb78f2b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7001942921273029a64f4b7cdb78f2b4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","requestID":"7001942921273029a64f4b7cdb78f2b4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.239397,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7001942921273029a64f4b7cdb78f2b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7001942921273029a64f4b7cdb78f2b4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Attempting to finish experiment","requestID":"7001942921273029a64f4b7cdb78f2b4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"343fbf80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.789869,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"343fbf80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"343fbf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc?id=0bdddb5c-b05a-434f-8aac-4e9ffb253c0f HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.250","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fa4d83d0b07e93da57bd935c65c30f25"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0bdddb5c-b05a-434f-8aac-4e9ffb253c0f\" from room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc?id=d00ecd7d-6129-48f8-b48e-2f324508bdfa HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.249","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"022a1555fe01a584f193935a2e27b88d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d00ecd7d-6129-48f8-b48e-2f324508bdfa\" in room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d00ecd7d-6129-48f8-b48e-2f324508bdfa\" from room \"http://localhost/rooms/c25d3d9b-dece-49a9-ab02-65e3d1da25dc\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54","device":"08f14c7f-9661-4646-9fd4-f56ac67216b0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae4a4a4db856913771b2f0b5e924ade9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ae4a4a4db856913771b2f0b5e924ade9","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fd0750d-1ea6-4dcd-914b-ccb0af37df54': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fd0750d-1ea6-4dcd-914b-ccb0af37df54","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0df905b7-eca9-4d9e-beb2-a8e800242bee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.4942093} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c921241-f755-4edf-b642-8e5301d2c6d2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.4944818} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"}}},"level":"info","message":"received a callback","requestID":"ae4a4a4db856913771b2f0b5e924ade9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2163e77511ce3e5d5f564377b39cbf55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"343fbf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2163e77511ce3e5d5f564377b39cbf55","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"}}},"level":"info","message":"received a callback","requestID":"2163e77511ce3e5d5f564377b39cbf55"} device-1 | {"data":{"peerconnection":"8fd0750d-1ea6-4dcd-914b-ccb0af37df54","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"343fbf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54 204 43ms","method":"DELETE","requestID":"343fbf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":43,"status":204,"url":"/peerconnections/8fd0750d-1ea6-4dcd-914b-ccb0af37df54"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"},"level":"info","message":"Successfully finished experiment","requestID":"7001942921273029a64f4b7cdb78f2b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3449d1a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e32e439-a84a-4167-a59b-c2b7c0f70918","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cbe8851-e888-4ad9-83ce-cd1a911fc167","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.5449772} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.139551,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3449d1a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3449d1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3449d1a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling 200 13ms","method":"POST","requestID":"3449d1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"344c42a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f14c7f-9661-4646-9fd4-f56ac67216b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d216f9f-eb0c-4a98-a067-c43073de62e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.560595} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F05f160a6-6eba-4000-8906-8f54626cfa2a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F05f160a6-6eba-4000-8906-8f54626cfa2a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d5e6270c-1304-4cdc-9cea-843d6f603048","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.5610027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"564ea107-99c3-45bf-be8d-766f5f60bbe9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.5612626} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.952703,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"344c42a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"344c42a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"7001942921273029a64f4b7cdb78f2b4","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"344c42a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling 200 12ms","method":"POST","requestID":"344c42a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/08f14c7f-9661-4646-9fd4-f56ac67216b0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a","requestID":"7001942921273029a64f4b7cdb78f2b4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7001942921273029a64f4b7cdb78f2b4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"2.280","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"59582ee7900ab893735f4ea739561395"} experiment-1 | {"level":"info","message":"DELETE /experiments/05f160a6-6eba-4000-8906-8f54626cfa2a 204 170ms","method":"DELETE","requestID":"7001942921273029a64f4b7cdb78f2b4","responseTime":170,"status":204,"url":"/experiments/05f160a6-6eba-4000-8906-8f54626cfa2a"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae4a4a4db856913771b2f0b5e924ade9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"ae4a4a4db856913771b2f0b5e924ade9","responseTime":132,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"8ccd820036c9f6e430821d3a2c648472"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8ccd820036c9f6e430821d3a2c648472","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8ccd820036c9f6e430821d3a2c648472"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.793","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"851959e477dc04cd1e39c7270455a233"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.892491,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8ccd820036c9f6e430821d3a2c648472","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"2163e77511ce3e5d5f564377b39cbf55","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"2163e77511ce3e5d5f564377b39cbf55"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8e32e439-a84a-4167-a59b-c2b7c0f70918' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d054f018-90df-4162-9630-d1f6bfa072cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.6540785} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83d55ef1-b42e-43ea-9515-48a92898e0b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.6588662} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","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/08f14c7f-9661-4646-9fd4-f56ac67216b0' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ec593184-4f6f-491d-b7b9-5056dc5bbe54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.6752703} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b1fe0c1-9f2a-4903-9933-992a11375265","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.675543} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"2f3b5b36-a072-472d-8ecd-927f9d891234","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.6805341} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8ccd820036c9f6e430821d3a2c648472"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"8ccd820036c9f6e430821d3a2c648472","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ccd820036c9f6e430821d3a2c648472"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc","level":"info","message":"auth send jwt","requestID":"83884b0f65bdf48fde193b0e93640957"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83884b0f65bdf48fde193b0e93640957","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"83884b0f65bdf48fde193b0e93640957"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.732986,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"83884b0f65bdf48fde193b0e93640957","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540996,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5Nn0.L5id6MIFGa1IA9fHTYvDWgzGj0s5-8nbGkm4lfDSurc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"16a0bec5-ca63-46eb-8b5d-f4483d543e6d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.7037764} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5619d0b5-03f0-4752-9f12-ab1e99312521","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.7083178} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"36dc151b-f170-4071-8992-5e1436439fe5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.7185194} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"caedc098-64b1-457d-869f-43043333fa16","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.7186224} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"5fcac60e-5d56-4ee4-9cdb-a45a3050dbc7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540996.7235577} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"83884b0f65bdf48fde193b0e93640957"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"83884b0f65bdf48fde193b0e93640957","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83884b0f65bdf48fde193b0e93640957"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5N30.Ykjq0ullNmwRpzVa_8lMBfxRnWlIt3ddjYN6CPdy1mU","level":"info","message":"auth send jwt","requestID":"b0cebf1af307e413f63453e37f9b73b5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b0cebf1af307e413f63453e37f9b73b5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b0cebf1af307e413f63453e37f9b73b5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250049,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b0cebf1af307e413f63453e37f9b73b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540997,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5N30.Ykjq0ullNmwRpzVa_8lMBfxRnWlIt3ddjYN6CPdy1mU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0cebf1af307e413f63453e37f9b73b5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"d16ce3b7-39b1-412b-8570-ae7ff8ab1bf8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540997.2099688} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0cebf1af307e413f63453e37f9b73b5","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6acf1ac-96c4-414a-a4b0-393e976c47d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540997.217418} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b0cebf1af307e413f63453e37f9b73b5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"29ec9704-616c-4b0b-a502-6be6fecfb549","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540997.2312458} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0cebf1af307e413f63453e37f9b73b5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b0cebf1af307e413f63453e37f9b73b5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b0cebf1af307e413f63453e37f9b73b5"} device-1 | {"level":"info","message":"PATCH /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921 200 38ms","method":"PATCH","requestID":"b0cebf1af307e413f63453e37f9b73b5","responseTime":38,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5N30.Ykjq0ullNmwRpzVa_8lMBfxRnWlIt3ddjYN6CPdy1mU","level":"info","message":"auth send jwt","requestID":"96957e1fba2981b16198e2d96d1aaa01"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96957e1fba2981b16198e2d96d1aaa01","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"96957e1fba2981b16198e2d96d1aaa01"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132078,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"96957e1fba2981b16198e2d96d1aaa01","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540997,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5N30.Ykjq0ullNmwRpzVa_8lMBfxRnWlIt3ddjYN6CPdy1mU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96957e1fba2981b16198e2d96d1aaa01","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"96957e1fba2981b16198e2d96d1aaa01"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/websocket 200 21ms","method":"POST","requestID":"96957e1fba2981b16198e2d96d1aaa01","responseTime":21,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"96957e1fba2981b16198e2d96d1aaa01"} device-1 | {"level":"info","message":"device 'http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb9ceea3fafb98d73faa0a7325dbae67","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fb9ceea3fafb98d73faa0a7325dbae67","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/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":"fb9ceea3fafb98d73faa0a7325dbae67"} device-1 | {"level":"info","message":"OPTIONS /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/websocket 200 1ms","method":"OPTIONS","requestID":"fb9ceea3fafb98d73faa0a7325dbae67","responseTime":1,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw","level":"info","message":"auth send jwt","requestID":"71f7e6287922b250b70580c45ad3de99"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"71f7e6287922b250b70580c45ad3de99","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"71f7e6287922b250b70580c45ad3de99"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.129538,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"71f7e6287922b250b70580c45ad3de99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71f7e6287922b250b70580c45ad3de99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"71f7e6287922b250b70580c45ad3de99"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/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":"71f7e6287922b250b70580c45ad3de99"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/websocket 200 22ms","method":"POST","requestID":"71f7e6287922b250b70580c45ad3de99","responseTime":22,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"734f1069a1c6afb1e815c0b58bc5c36a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"734f1069a1c6afb1e815c0b58bc5c36a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 1ms","method":"OPTIONS","requestID":"734f1069a1c6afb1e815c0b58bc5c36a","responseTime":1,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"734f1069a1c6afb1e815c0b58bc5c36a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw","level":"info","message":"auth send jwt","requestID":"c784bddf674cbb64e60d3daa921e320a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c784bddf674cbb64e60d3daa921e320a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c784bddf674cbb64e60d3daa921e320a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.175652,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c784bddf674cbb64e60d3daa921e320a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c784bddf674cbb64e60d3daa921e320a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"742e2c04-5b82-4f8d-bb96-2c6f7d6bd29a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.842642} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c784bddf674cbb64e60d3daa921e320a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fbdaa32-f38f-4310-921e-416c757fecdd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.850257} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c784bddf674cbb64e60d3daa921e320a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"f482c9b8-ac61-4264-b6c9-c017663794b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.8640711} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c784bddf674cbb64e60d3daa921e320a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c784bddf674cbb64e60d3daa921e320a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c784bddf674cbb64e60d3daa921e320a"} device-1 | {"level":"info","message":"PATCH /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 38ms","method":"PATCH","requestID":"c784bddf674cbb64e60d3daa921e320a","responseTime":38,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw","level":"info","message":"auth send jwt","requestID":"a0ec49b542209059895e124d168db1cd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a0ec49b542209059895e124d168db1cd","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0ec49b542209059895e124d168db1cd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.325356,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a0ec49b542209059895e124d168db1cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a0ec49b542209059895e124d168db1cd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"c1ae9e86-842b-431d-a3f0-d3053028cdc9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.894737} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0ec49b542209059895e124d168db1cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0ec49b542209059895e124d168db1cd"} device-1 | {"level":"info","message":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? 200 17ms","method":"GET","requestID":"a0ec49b542209059895e124d168db1cd","responseTime":17,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0ec49b542209059895e124d168db1cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw","level":"info","message":"auth send jwt","requestID":"4cb75940258fae1b3d20024820fd3630"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4cb75940258fae1b3d20024820fd3630","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4cb75940258fae1b3d20024820fd3630"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4cb75940258fae1b3d20024820fd3630","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4cb75940258fae1b3d20024820fd3630","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"b353a84f-1386-4a03-98bf-f1e62ba767ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.9180562} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4cb75940258fae1b3d20024820fd3630","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4cb75940258fae1b3d20024820fd3630"} gateway-1 | {"time_local":"10/Oct/2024:06:16:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4cb75940258fae1b3d20024820fd3630"} device-1 | {"level":"info","message":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 16ms","method":"GET","requestID":"4cb75940258fae1b3d20024820fd3630","responseTime":16,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw","level":"info","message":"auth send jwt","requestID":"d1dedf40de49a047f93f607d34412fbf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1dedf40de49a047f93f607d34412fbf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d1dedf40de49a047f93f607d34412fbf"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.513924,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d1dedf40de49a047f93f607d34412fbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1dedf40de49a047f93f607d34412fbf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to run experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to book experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully booked experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.873179,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"a188816e-0eff-487f-a245-8f26d5283012","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.9920626} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"2d431118-b46b-4327-8fd3-b976b4841bbc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540998.9934223} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? 200 22ms","method":"GET","requestID":"35be4930-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 21ms","method":"GET","requestID":"35be7040-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Setting up experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully set up experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35caf360-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.7034,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully running experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":5.125575,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40404","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.694462,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0603761-4c87-4cfb-a2b1-e81abdb628e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.0741293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"a0798608-8153-408a-b5d8-b023d6af285d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.0747712} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35caf360-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"35caf360-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"7134f963-e597-443b-9d1b-94d622c94055","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.0831037} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? 200 28ms","method":"GET","requestID":"35ca3010-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35caf360-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling 200 24ms","method":"POST","requestID":"35caf360-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35cf3920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 33ms","method":"GET","requestID":"35caa540-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F835ff110-cdf4-45bd-9347-89fb2b1e622d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F835ff110-cdf4-45bd-9347-89fb2b1e622d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1f324b7a-7cb6-4dc9-ad96-127b0f9ed3b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.094837} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85ad0a71-1cba-47b1-bb10-c0fdd2c194aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.0954187} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35d04a90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"d1dedf40de49a047f93f607d34412fbf","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f7088d4-b5a0-426f-900e-9aa2c60c95a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1003017} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.182821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35cf3920-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","rebac_allow":false,"scope_allow":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":"35cf3920-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a0631ea-e2d0-401c-a278-3d1485650a06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.104849} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.654208,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35d04a90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"35d04a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d1dedf40de49a047f93f607d34412fbf"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"d1dedf40de49a047f93f607d34412fbf","responseTime":178,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35cf3920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling 200 19ms","method":"POST","requestID":"35cf3920-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35d04a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling 200 16ms","method":"POST","requestID":"35d04a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"12493da80ffaffa36eb2e1c480502629"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12493da80ffaffa36eb2e1c480502629","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35d330c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12493da80ffaffa36eb2e1c480502629"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850068,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"12493da80ffaffa36eb2e1c480502629","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"12493da80ffaffa36eb2e1c480502629","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04df3fb4-6539-47c6-bf3d-c359d2221daf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1212478} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.742585,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35d330c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"35d330c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35d330c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling 200 10ms","method":"POST","requestID":"35d330c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"6a826696-ae3d-4a70-bc48-a5aa0ca2f781","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1267126} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12493da80ffaffa36eb2e1c480502629","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12493da80ffaffa36eb2e1c480502629"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12493da80ffaffa36eb2e1c480502629"} device-1 | {"level":"info","message":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? 200 15ms","method":"GET","requestID":"12493da80ffaffa36eb2e1c480502629","responseTime":15,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694071,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763226,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"26db84af1af23f421d8a0402eea870c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"26db84af1af23f421d8a0402eea870c5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26db84af1af23f421d8a0402eea870c5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.675243031Z"}]},"request_id":"2e767385-f936-485a-bd05-24a192f8b81e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1380386} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"3379a114-1da2-4efa-8e90-8cb8a53f385d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1393664} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} device-1 | {"level":"info","message":"GET /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921? 200 14ms","method":"GET","requestID":"35d52c90-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"26db84af1af23f421d8a0402eea870c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"26db84af1af23f421d8a0402eea870c5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 17ms","method":"GET","requestID":"35d553a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:36.718482363Z"}]},"request_id":"05315e23-bde0-44b5-9960-09ff0b16f0a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1474028} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Building connection plan","requestID":"d1dedf40de49a047f93f607d34412fbf"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"1ae9da62-cec6-4270-bd71-187c12645c17"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"bab605b5-e0c2-41ba-b36a-940e63a36b88"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"1a41b586-c085-4396-b9cb-1159de320d16"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d1dedf40de49a047f93f607d34412fbf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26db84af1af23f421d8a0402eea870c5","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"35d839d0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"35d839d0-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26db84af1af23f421d8a0402eea870c5"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"35d839d0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26db84af1af23f421d8a0402eea870c5"} device-1 | {"level":"info","message":"GET /devices/8e4181da-561a-47a6-96cc-4d9e065d5880? 200 13ms","method":"GET","requestID":"26db84af1af23f421d8a0402eea870c5","responseTime":13,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead?id=d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47","ws://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead?id=d92a7773-586e-4faa-a8d2-85ca9ce0c534"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d1dedf40de49a047f93f607d34412fbf"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.842214,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540998,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OH0.Q0e3tkjTDMXVZG5KT0cyLjN42qQD7SQK35oAzYMywpw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a0185cac-0dec-4d6b-9c49-ef4becbda86f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1643243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"370ef58d-0be4-4599-ad54-0db8e8dc900d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.1646645} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65'","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65'","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} 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":"35d8af00-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"35d8af00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"35de2d40-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d92a7773-586e-4faa-a8d2-85ca9ce0c534\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\"","requestID":"35de2d40-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"35de2d40-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"49c0b32accfbda23f23cc3f24f91d4aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"49c0b32accfbda23f23cc3f24f91d4aa","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"35dea270-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"}}},"level":"info","message":"received a callback","requestID":"49c0b32accfbda23f23cc3f24f91d4aa"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\"","requestID":"35dea270-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"35dea270-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 21ms","method":"POST","requestID":"49c0b32accfbda23f23cc3f24f91d4aa","responseTime":21,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.023","http_referrer":"","http_user_agent":"node-fetch","requestID":"49c0b32accfbda23f23cc3f24f91d4aa"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d1dedf40de49a047f93f607d34412fbf"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35e53220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94e028676ec1e2e8e0e640eba6e4cbc5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"94e028676ec1e2e8e0e640eba6e4cbc5","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"}}},"level":"info","message":"received a callback","requestID":"94e028676ec1e2e8e0e640eba6e4cbc5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32e1c95e-e247-4d75-9e2a-2a48746cbef4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.24362} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.969464,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35e53220-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","rebac_allow":false,"scope_allow":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":"35e53220-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"35e75500-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42b4db2f-a50b-4135-a16b-cdc1a302ca65","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b042751-035c-42e9-a6c5-564dd7f6c068","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.25261} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.37419,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35e75500-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65","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":"35e75500-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35e53220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling 200 26ms","method":"POST","requestID":"35e53220-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"35e75500-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65 200 13ms","method":"GET","requestID":"35e75500-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35e99ef0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3fb3454-6cea-495c-96e7-1b306d2137f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.26915} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.896351,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35e99ef0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"35e99ef0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35e99ef0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling 200 10ms","method":"POST","requestID":"35e99ef0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"94e028676ec1e2e8e0e640eba6e4cbc5","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"94e028676ec1e2e8e0e640eba6e4cbc5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35ee32d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9d7bc8d-b5db-497d-a7ae-e331df01d920","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.297937} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.515899,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35ee32d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35ee32d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35ee32d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling 200 9ms","method":"POST","requestID":"35ee32d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35efe080-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58988049-ad33-4db0-9f63-44f9405e93c0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.3082342} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.316739,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35efe080-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35efe080-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35efe080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling 200 11ms","method":"POST","requestID":"35efe080-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"28847472694651c7720f4e266053a6c6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"28847472694651c7720f4e266053a6c6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","requestID":"28847472694651c7720f4e266053a6c6"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.162977,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"28847472694651c7720f4e266053a6c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28847472694651c7720f4e266053a6c6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","requestID":"28847472694651c7720f4e266053a6c6"} experiment-1 | {"level":"info","message":"GET /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d 200 18ms","method":"GET","requestID":"28847472694651c7720f4e266053a6c6","responseTime":18,"status":200,"url":"/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28847472694651c7720f4e266053a6c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"91f77f4c1181ffbca134dd847316c6d4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"91f77f4c1181ffbca134dd847316c6d4","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","requestID":"91f77f4c1181ffbca134dd847316c6d4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.295896,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"91f77f4c1181ffbca134dd847316c6d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"91f77f4c1181ffbca134dd847316c6d4","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Attempting to finish experiment","requestID":"91f77f4c1181ffbca134dd847316c6d4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"36279250-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.204172,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36279250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"36279250-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f85dd950-9298-4293-90e7-a94d7cc80ead?id=d92a7773-586e-4faa-a8d2-85ca9ce0c534 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.499","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f05e05a6b16b602df257925b52664296"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d92a7773-586e-4faa-a8d2-85ca9ce0c534\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d92a7773-586e-4faa-a8d2-85ca9ce0c534\" from room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65","device":"8e4181da-561a-47a6-96cc-4d9e065d5880","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f85dd950-9298-4293-90e7-a94d7cc80ead?id=d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47 HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.499","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a1a60c0504707b95c1e9036085975713"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" in room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d199b1ce-7b1c-4b8f-8295-cd3c89cd0c47\" from room \"http://localhost/rooms/f85dd950-9298-4293-90e7-a94d7cc80ead\""} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42b4db2f-a50b-4135-a16b-cdc1a302ca65': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42b4db2f-a50b-4135-a16b-cdc1a302ca65","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"1eda292e-df40-4a13-be41-084dec2417ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.690753} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4bf96c953b2e04f9d67f6da3208707eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7365574-dd1f-4a0d-8af1-07210bb7a8fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.6909742} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4bf96c953b2e04f9d67f6da3208707eb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"}}},"level":"info","message":"received a callback","requestID":"4bf96c953b2e04f9d67f6da3208707eb"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ea846864af323a427521513a73eacf1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"36279250-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7ea846864af323a427521513a73eacf1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"}}},"level":"info","message":"received a callback","requestID":"7ea846864af323a427521513a73eacf1"} device-1 | {"data":{"peerconnection":"42b4db2f-a50b-4135-a16b-cdc1a302ca65","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"36279250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65 204 40ms","method":"DELETE","requestID":"36279250-86cf-11ef-b00e-2fb111b9dda5","responseTime":40,"status":204,"url":"/peerconnections/42b4db2f-a50b-4135-a16b-cdc1a302ca65"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"},"level":"info","message":"Successfully finished experiment","requestID":"91f77f4c1181ffbca134dd847316c6d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36309300-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e4181da-561a-47a6-96cc-4d9e065d5880","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad1248e5-6d48-41bf-8724-b59a8038eccc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.7335637} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.920425,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36309300-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e4181da-561a-47a6-96cc-4d9e065d5880","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"36309300-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36309300-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling 200 11ms","method":"POST","requestID":"36309300-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/8e4181da-561a-47a6-96cc-4d9e065d5880/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F835ff110-cdf4-45bd-9347-89fb2b1e622d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F835ff110-cdf4-45bd-9347-89fb2b1e622d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"8329907c-844a-4c73-ab41-709def4e7b09","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.7421691} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3632b5e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b79fe9cd-e1ae-4f10-85d4-d876137a1faa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.7424707} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"91f77f4c1181ffbca134dd847316c6d4","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F02aa71d0-f9d8-42dc-9f09-6a3513d17921","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"053d6db7-4d85-44b8-8da3-3e2c96002751","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.7474434} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.746437,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3632b5e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3632b5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3632b5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling 200 9ms","method":"POST","requestID":"3632b5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/02aa71d0-f9d8-42dc-9f09-6a3513d17921/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d","requestID":"91f77f4c1181ffbca134dd847316c6d4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91f77f4c1181ffbca134dd847316c6d4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"2.548","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"095aaacfcb91443f7d62a20332c2bf6e"} experiment-1 | {"level":"info","message":"DELETE /experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d 204 159ms","method":"DELETE","requestID":"91f77f4c1181ffbca134dd847316c6d4","responseTime":159,"status":204,"url":"/experiments/835ff110-cdf4-45bd-9347-89fb2b1e622d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"4bf96c953b2e04f9d67f6da3208707eb","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"4bf96c953b2e04f9d67f6da3208707eb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"7ea846864af323a427521513a73eacf1","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ea846864af323a427521513a73eacf1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"80655f15f1c3f05f20a21f0140dcff7c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"80655f15f1c3f05f20a21f0140dcff7c","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"80655f15f1c3f05f20a21f0140dcff7c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"30ffba587887935cb9a65dfb6841bd42"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.904047,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"80655f15f1c3f05f20a21f0140dcff7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","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/02aa71d0-f9d8-42dc-9f09-6a3513d17921' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8883f44d-8fb9-4439-bdd8-f458e018ed12","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.8463333} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb615453-755a-4bc0-8106-cbf6b6bf74bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.8516467} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","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/8e4181da-561a-47a6-96cc-4d9e065d5880' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"762126da-03a4-4af9-badc-e4483b4750f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.8677797} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f04981fe-303e-4d1d-a86d-50aeb7996d64","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.868235} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"9d475bcd-ed31-44f1-bb6a-05a89de3bf63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.8725195} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"80655f15f1c3f05f20a21f0140dcff7c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80655f15f1c3f05f20a21f0140dcff7c"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"80655f15f1c3f05f20a21f0140dcff7c","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU","level":"info","message":"auth send jwt","requestID":"7f633822b8feab7d22e1839fa3b3af67"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7f633822b8feab7d22e1839fa3b3af67"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.740525,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7f633822b8feab7d22e1839fa3b3af67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728540999,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MDk5OX0.MoTL9Ol9y6CS1si1vr8d8z-qMZGo9_kHrdDzr1qTHsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"51e2b326-7085-413c-bb28-fa668d77c14e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.8961837} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ceea7834-1e02-4106-9d34-900e416e3525","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.900779} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8d08a888-5414-427d-9255-ae2a1971c874","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.911447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb0cc56b-8b01-44d9-82d2-db0d935f54de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.9115608} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"96e05884-f4de-40c7-aa0c-65360379f34e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728540999.9158762} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7f633822b8feab7d22e1839fa3b3af67"} gateway-1 | {"time_local":"10/Oct/2024:06:16:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f633822b8feab7d22e1839fa3b3af67"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"7f633822b8feab7d22e1839fa3b3af67","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"a769cfd6116b2767a28a2526c22dccdf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a769cfd6116b2767a28a2526c22dccdf","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"9ee1ff9690b88a09ec4f717b565bedf4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a769cfd6116b2767a28a2526c22dccdf"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9ee1ff9690b88a09ec4f717b565bedf4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611677,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a769cfd6116b2767a28a2526c22dccdf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a769cfd6116b2767a28a2526c22dccdf","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.572212,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9ee1ff9690b88a09ec4f717b565bedf4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"6cdc452e-1e7c-427e-ba64-aba439807ab0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.3913383} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a769cfd6116b2767a28a2526c22dccdf","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"184ede41-6633-4310-9e07-4cf464b5feb8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.3920145} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65877f29-ac8e-4996-b6af-4057a4dcb5a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.3953562} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a769cfd6116b2767a28a2526c22dccdf","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8d61820-be44-471a-8a4a-769ec8339d98","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.3969955} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"e7bea93f-4c41-48da-b93d-a9d73646b5dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.4005682} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9ee1ff9690b88a09ec4f717b565bedf4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/888aa712-b134-4da9-bd8c-97e049c9838c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9ee1ff9690b88a09ec4f717b565bedf4"} device-1 | {"level":"info","message":"PATCH /devices/888aa712-b134-4da9-bd8c-97e049c9838c 200 21ms","method":"PATCH","requestID":"9ee1ff9690b88a09ec4f717b565bedf4","responseTime":21,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"af62464438990d3ad4b7e554c9e30925"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"af62464438990d3ad4b7e554c9e30925","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"af62464438990d3ad4b7e554c9e30925"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.071096,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"af62464438990d3ad4b7e554c9e30925","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af62464438990d3ad4b7e554c9e30925","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"e73378a3-5bd5-42d3-bc85-9435e926292b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.4115381} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a769cfd6116b2767a28a2526c22dccdf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a769cfd6116b2767a28a2526c22dccdf"} device-1 | {"level":"info","message":"PATCH /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d 200 35ms","method":"PATCH","requestID":"a769cfd6116b2767a28a2526c22dccdf","responseTime":35,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a769cfd6116b2767a28a2526c22dccdf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"d4e331e4626636972361fb67553830f6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d4e331e4626636972361fb67553830f6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d4e331e4626636972361fb67553830f6"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045078,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d4e331e4626636972361fb67553830f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d4e331e4626636972361fb67553830f6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"af62464438990d3ad4b7e554c9e30925"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"af62464438990d3ad4b7e554c9e30925"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/websocket 200 18ms","method":"POST","requestID":"af62464438990d3ad4b7e554c9e30925","responseTime":18,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d4e331e4626636972361fb67553830f6"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d4e331e4626636972361fb67553830f6"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/websocket 200 17ms","method":"POST","requestID":"d4e331e4626636972361fb67553830f6","responseTime":17,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"038a17e8727b96d8cfc8640604c5c4d2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"038a17e8727b96d8cfc8640604c5c4d2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"038a17e8727b96d8cfc8640604c5c4d2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670913,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"038a17e8727b96d8cfc8640604c5c4d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"038a17e8727b96d8cfc8640604c5c4d2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"ed862f53-bce3-4e5c-816e-d0bdb8abc03c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.4801943} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"038a17e8727b96d8cfc8640604c5c4d2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"038a17e8727b96d8cfc8640604c5c4d2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"038a17e8727b96d8cfc8640604c5c4d2"} device-1 | {"level":"info","message":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? 200 16ms","method":"GET","requestID":"038a17e8727b96d8cfc8640604c5c4d2","responseTime":16,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"acd0f922033be06c81ec1338c802989c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acd0f922033be06c81ec1338c802989c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acd0f922033be06c81ec1338c802989c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"acd0f922033be06c81ec1338c802989c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"acd0f922033be06c81ec1338c802989c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"9ae4d1d9-8e2a-46c9-aa31-2d154acb2327","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.50458} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"acd0f922033be06c81ec1338c802989c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acd0f922033be06c81ec1338c802989c"} device-1 | {"level":"info","message":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? 200 17ms","method":"GET","requestID":"acd0f922033be06c81ec1338c802989c","responseTime":17,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acd0f922033be06c81ec1338c802989c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"5d9d83ba95eef94cb29f3537e6748788"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5d9d83ba95eef94cb29f3537e6748788","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5d9d83ba95eef94cb29f3537e6748788"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.211151,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d9d83ba95eef94cb29f3537e6748788","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d9d83ba95eef94cb29f3537e6748788","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to run experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to book experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully booked experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610805,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.620812,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"fe424571-a510-43f7-90f6-8cbaf3cd3276","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.5901282} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"8c90883a-bcac-4c21-9c9c-c2683679fe18","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.5906963} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? 200 15ms","method":"GET","requestID":"36b2e260-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? 200 15ms","method":"GET","requestID":"36b33080-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Setting up experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully set up experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36bea230-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257135,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully running experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.334244,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.615978,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ff704fe-69fe-444e-be4f-c958448f1d3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.6700091} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"ed447abe-8f85-4272-99ca-4d5547441e19","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.6736355} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36bea230-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","rebac_allow":false,"scope_allow":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":"36bea230-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"4326836c-74e7-49cf-bca4-044524bd14cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.676246} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36bea230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling 200 27ms","method":"POST","requestID":"36bea230-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? 200 33ms","method":"GET","requestID":"36bdb7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? 200 34ms","method":"GET","requestID":"36be2d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":34,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36c38430-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cef5168-5d19-4cff-a8c5-f5c0945f3005#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cef5168-5d19-4cff-a8c5-f5c0945f3005","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"685644cc-8539-41f6-9a30-5f01894891f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.6922548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84c85982-15a2-4305-a628-3b0ab34f390e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.6925857} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36c3f960-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"5d9d83ba95eef94cb29f3537e6748788","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99f9bed2-e42e-4b11-a65a-27d13369c1cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7008228} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.603588,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36c38430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"36c38430-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f119367c-4d45-473c-9dc0-42334498cdc2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7023153} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.418496,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36c3f960-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","rebac_allow":false,"scope_allow":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":"36c3f960-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5d9d83ba95eef94cb29f3537e6748788"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"level":"info","message":"POST /experiments? 201 189ms","method":"POST","requestID":"5d9d83ba95eef94cb29f3537e6748788","responseTime":189,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36c38430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling 200 20ms","method":"POST","requestID":"36c38430-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36c3f960-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling 200 18ms","method":"POST","requestID":"36c3f960-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"46cfaad2bade45fe8981fa914f22fcc8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"46cfaad2bade45fe8981fa914f22fcc8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36c72db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46cfaad2bade45fe8981fa914f22fcc8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae20294e-3166-4b02-bf69-440c52075bd2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7216504} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.81647,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46cfaad2bade45fe8981fa914f22fcc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46cfaad2bade45fe8981fa914f22fcc8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.133285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36c72db0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"36c72db0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"fddad44f-8503-4d11-a961-ec4af8819ea3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7271528} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36c72db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling 200 13ms","method":"POST","requestID":"36c72db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46cfaad2bade45fe8981fa914f22fcc8","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46cfaad2bade45fe8981fa914f22fcc8"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46cfaad2bade45fe8981fa914f22fcc8"} device-1 | {"level":"info","message":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? 200 18ms","method":"GET","requestID":"46cfaad2bade45fe8981fa914f22fcc8","responseTime":18,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.032409,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.786199,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY","level":"info","message":"auth send jwt","requestID":"73d6fd4cb98eb60469767bfea60b7435"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"73d6fd4cb98eb60469767bfea60b7435","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73d6fd4cb98eb60469767bfea60b7435"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.867740890Z"}]},"request_id":"a27b76f4-7171-49ae-b774-b37b8a7b4bb5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7413096} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"e3a03d61-c331-44de-9a2d-3e78a8428bd3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7427354} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.14594,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} device-1 | {"level":"info","message":"GET /devices/888aa712-b134-4da9-bd8c-97e049c9838c? 200 15ms","method":"GET","requestID":"36c99eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d6fd4cb98eb60469767bfea60b7435","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73d6fd4cb98eb60469767bfea60b7435","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? 200 18ms","method":"GET","requestID":"36c9ecd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:39.911426091Z"}]},"request_id":"eca44a69-d6cf-41e6-b33d-18d0a5003d9a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7513692} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Building connection plan","requestID":"5d9d83ba95eef94cb29f3537e6748788"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"d47c72e4-84a9-457b-a00d-fd07c0967920"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"552edd1f-b86d-4840-85d4-7609cdf355bd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"d75daf4b-8459-40df-a709-8dd8b7589345"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5d9d83ba95eef94cb29f3537e6748788"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73d6fd4cb98eb60469767bfea60b7435","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"36cd2120-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"36cd2120-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73d6fd4cb98eb60469767bfea60b7435"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"36cd2120-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73d6fd4cb98eb60469767bfea60b7435"} device-1 | {"level":"info","message":"GET /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d? 200 14ms","method":"GET","requestID":"73d6fd4cb98eb60469767bfea60b7435","responseTime":14,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0?id=f2a38a7d-4bf1-4011-860e-c7696ee2312a","ws://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0?id=dd04fca8-0427-4ecd-84c1-67cf0d5e5e14"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"5d9d83ba95eef94cb29f3537e6748788"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.084935,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541000,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMH0.oa5AqD2crJc9ItrijUXZp_bTq2We-emM5aC6aKiUQSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c54fe736-f909-4144-b9c0-5bc0b8883770","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7750776} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8e70c08-4802-441d-916a-9d8b818b4042","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.7756188} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5'","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5'","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} 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":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5","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":"36cdbd60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"36d42600-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"dd04fca8-0427-4ecd-84c1-67cf0d5e5e14\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\"","requestID":"36d42600-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"36d42600-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5e7f56572a4f149d2f840bbad6659e5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"36d44d10-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d5e7f56572a4f149d2f840bbad6659e5","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\"","requestID":"36d44d10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"36d44d10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"}}},"level":"info","message":"received a callback","requestID":"d5e7f56572a4f149d2f840bbad6659e5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"d5e7f56572a4f149d2f840bbad6659e5","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"d5e7f56572a4f149d2f840bbad6659e5"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5d9d83ba95eef94cb29f3537e6748788"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36d9a440-86cf-11ef-b00e-2fb111b9dda5"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2b2452c-bbf0-4ebb-9dea-9e5f672adfbf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.8421884} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.116629,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36d9a440-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"36d9a440-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c191909077216d96ceac5cca14978bf1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c191909077216d96ceac5cca14978bf1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"}}},"level":"info","message":"received a callback","requestID":"c191909077216d96ceac5cca14978bf1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36d9a440-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling 200 12ms","method":"POST","requestID":"36d9a440-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36dbc720-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"36dc3c50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc7f407a-b4cd-46c2-9762-8e7574a3eed4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.8555608} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234065,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36dbc720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36dbc720-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0d5daaa-c36b-42de-a161-3b6c26abd4f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94edce6b-5ece-44ef-a40f-22474867938a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.857619} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.293622,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36dc3c50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5","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":"36dc3c50-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36dbc720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling 200 9ms","method":"POST","requestID":"36dbc720-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"36dc3c50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5 200 8ms","method":"GET","requestID":"36dc3c50-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"c191909077216d96ceac5cca14978bf1","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"c191909077216d96ceac5cca14978bf1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36e00ce0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9a02a48-4b63-4523-9817-8a2d1d743794","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.8833668} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.861356,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36e00ce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"36e00ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36e00ce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling 200 10ms","method":"POST","requestID":"36e00ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"36e1e1a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"230fcad3-9d4d-4d64-9407-84964f6d2401","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541000.894835} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.999651,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36e1e1a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36e1e1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"36e1e1a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling 200 8ms","method":"POST","requestID":"36e1e1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg","level":"info","message":"auth send jwt","requestID":"40ced6cb77841b44f71ff5ad64d98eb1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40ced6cb77841b44f71ff5ad64d98eb1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","requestID":"40ced6cb77841b44f71ff5ad64d98eb1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.632237,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"40ced6cb77841b44f71ff5ad64d98eb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541001,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"40ced6cb77841b44f71ff5ad64d98eb1","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","requestID":"40ced6cb77841b44f71ff5ad64d98eb1"} experiment-1 | {"level":"info","message":"GET /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005 200 22ms","method":"GET","requestID":"40ced6cb77841b44f71ff5ad64d98eb1","responseTime":22,"status":200,"url":"/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005 HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40ced6cb77841b44f71ff5ad64d98eb1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg","level":"info","message":"auth send jwt","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4cc355b686a1a9c73a899b8b0d40970a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.226447,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4cc355b686a1a9c73a899b8b0d40970a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541001,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4cc355b686a1a9c73a899b8b0d40970a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Attempting to finish experiment","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.258259,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541001,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0?id=f2a38a7d-4bf1-4011-860e-c7696ee2312a HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.275","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3c130e3275254f177e3dca3bb235f462"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0?id=dd04fca8-0427-4ecd-84c1-67cf0d5e5e14 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.276","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8e7d3bdcb4dec6bb7b45c151692088af"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f2a38a7d-4bf1-4011-860e-c7696ee2312a\" from room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"dd04fca8-0427-4ecd-84c1-67cf0d5e5e14\" in room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"dd04fca8-0427-4ecd-84c1-67cf0d5e5e14\" from room \"http://localhost/rooms/9f1e36db-6159-4180-9cdd-cb86d9bd69e0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8012192b361545af01098292c17649b6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8012192b361545af01098292c17649b6","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ec0041f860e9d8d732bb860edf01075","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"}}},"level":"info","message":"received a callback","requestID":"8012192b361545af01098292c17649b6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ec0041f860e9d8d732bb860edf01075","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"}}},"level":"info","message":"received a callback","requestID":"6ec0041f860e9d8d732bb860edf01075"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0d5daaa-c36b-42de-a161-3b6c26abd4f5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb0d5daaa-c36b-42de-a161-3b6c26abd4f5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"38e3173b-7915-4e5f-b800-c90d73bcffa7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.0851047} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edd81dbb-d73f-4046-b024-7c2f2ed8da12","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.0855222} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b0d5daaa-c36b-42de-a161-3b6c26abd4f5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5 204 48ms","method":"DELETE","requestID":"36fb5d10-86cf-11ef-b00e-2fb111b9dda5","responseTime":48,"status":204,"url":"/peerconnections/b0d5daaa-c36b-42de-a161-3b6c26abd4f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"},"level":"info","message":"Successfully finished experiment","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37065990-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2539411b-0abb-48f7-a3f8-6eab3d166e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14ea34e2-c3a4-4086-b4ee-bc7109eaa488","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.1379046} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.178454,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"37065990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"37065990-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37065990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling 200 15ms","method":"POST","requestID":"37065990-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cef5168-5d19-4cff-a8c5-f5c0945f3005': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cef5168-5d19-4cff-a8c5-f5c0945f3005","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"c3b11115-ea0c-4972-93e4-da5cfc28f0e2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.1468728} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"370918b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98d7c225-b263-4b5d-a1a0-af644619d33f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.147048} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"4cc355b686a1a9c73a899b8b0d40970a","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F888aa712-b134-4da9-bd8c-97e049c9838c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19e2e2e1-271f-4df1-9542-c4e719a98465","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.1540635} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.285278,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"370918b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/888aa712-b134-4da9-bd8c-97e049c9838c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"370918b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"370918b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling 200 14ms","method":"POST","requestID":"370918b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/888aa712-b134-4da9-bd8c-97e049c9838c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4cc355b686a1a9c73a899b8b0d40970a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.789","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"dbe7e6142d1c1f042a8fc1089224b696"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"0.779","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9201c864d0038fdec042d6988924dd87"} experiment-1 | {"level":"info","message":"DELETE /experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005 204 175ms","method":"DELETE","requestID":"4cc355b686a1a9c73a899b8b0d40970a","responseTime":175,"status":204,"url":"/experiments/3cef5168-5d19-4cff-a8c5-f5c0945f3005"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"8012192b361545af01098292c17649b6","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"8012192b361545af01098292c17649b6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"6ec0041f860e9d8d732bb860edf01075","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ec0041f860e9d8d732bb860edf01075"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg","level":"info","message":"auth send jwt","requestID":"3344839d6b3dee47469a8a3880b6efb5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3344839d6b3dee47469a8a3880b6efb5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2539411b-0abb-48f7-a3f8-6eab3d166e0d' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"3344839d6b3dee47469a8a3880b6efb5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.810739,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3344839d6b3dee47469a8a3880b6efb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541001,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","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/888aa712-b134-4da9-bd8c-97e049c9838c' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2711b349-7bda-4f06-814f-2e314fafbf6c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2455947} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d3658b6-e2d0-44f7-8887-871da9500618","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2517538} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8a029b61-b772-4115-8ea8-18a741e6f5e7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2628243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8facb1bf-7153-48f9-806a-1e4da92e6cab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2631056} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"bdc37930-f52f-40d2-9942-eca6a99176af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2690754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3344839d6b3dee47469a8a3880b6efb5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3344839d6b3dee47469a8a3880b6efb5"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"3344839d6b3dee47469a8a3880b6efb5","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg","level":"info","message":"auth send jwt","requestID":"015f3466b256d8d974fd2a0764fa3e45"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"015f3466b256d8d974fd2a0764fa3e45","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"015f3466b256d8d974fd2a0764fa3e45"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"015f3466b256d8d974fd2a0764fa3e45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541001,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwMX0.94l3XQJRI47kPUYdeSR8eatteTLhBOmLH9yzjyVF3Hg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ef6ebad3-48b3-4eae-8704-fdcf83454e0e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.2955656} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5dea258a-e9aa-408e-beeb-2228e6d85e25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.30126} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4e0333e6-d667-4304-a540-ee917f544f5c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.3191476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"054aa275-48ff-4f73-b16d-a9d62e711e04","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.3195522} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"39fc7101-a219-498f-b233-52455626968c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541001.3251798} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"015f3466b256d8d974fd2a0764fa3e45"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"015f3466b256d8d974fd2a0764fa3e45","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"015f3466b256d8d974fd2a0764fa3e45"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b9b82036945f25a4884ff6c49dd7099","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0b9b82036945f25a4884ff6c49dd7099","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/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":"0b9b82036945f25a4884ff6c49dd7099"} device-1 | {"level":"info","message":"OPTIONS /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/websocket 200 1ms","method":"OPTIONS","requestID":"0b9b82036945f25a4884ff6c49dd7099","responseTime":1,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"e01cbde02a3a54587ccf118840d945b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e01cbde02a3a54587ccf118840d945b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e01cbde02a3a54587ccf118840d945b9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6476dac1085a7fb8de5f6669677cca03","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6476dac1085a7fb8de5f6669677cca03","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e70fc156-b26d-47b0-a369-465f77846854/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6476dac1085a7fb8de5f6669677cca03"} device-1 | {"level":"info","message":"OPTIONS /devices/e70fc156-b26d-47b0-a369-465f77846854/websocket 200 0ms","method":"OPTIONS","requestID":"6476dac1085a7fb8de5f6669677cca03","responseTime":0,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.785146,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e01cbde02a3a54587ccf118840d945b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e01cbde02a3a54587ccf118840d945b9","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"b62f4612ebad5b461b8d6d36f38d5791"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b62f4612ebad5b461b8d6d36f38d5791","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b62f4612ebad5b461b8d6d36f38d5791"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992131,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b62f4612ebad5b461b8d6d36f38d5791","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b62f4612ebad5b461b8d6d36f38d5791","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e01cbde02a3a54587ccf118840d945b9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/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":"e01cbde02a3a54587ccf118840d945b9"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/websocket 200 23ms","method":"POST","requestID":"e01cbde02a3a54587ccf118840d945b9","responseTime":23,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b62f4612ebad5b461b8d6d36f38d5791"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/websocket 200 25ms","method":"POST","requestID":"b62f4612ebad5b461b8d6d36f38d5791","responseTime":25,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/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":"b62f4612ebad5b461b8d6d36f38d5791"} device-1 | {"level":"info","message":"device 'http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec291d86888aaa47220104d2955121dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ec291d86888aaa47220104d2955121dd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ec291d86888aaa47220104d2955121dd"} device-1 | {"level":"info","message":"OPTIONS /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 1ms","method":"OPTIONS","requestID":"ec291d86888aaa47220104d2955121dd","responseTime":1,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"b12db8baa4879956ff1eed500866eecf"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b12db8baa4879956ff1eed500866eecf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b12db8baa4879956ff1eed500866eecf"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78796b52f5c91d6283497d19263a9e71","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"78796b52f5c91d6283497d19263a9e71","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 0ms","method":"OPTIONS","requestID":"78796b52f5c91d6283497d19263a9e71","responseTime":0,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e70fc156-b26d-47b0-a369-465f77846854? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"78796b52f5c91d6283497d19263a9e71"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b12db8baa4879956ff1eed500866eecf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b12db8baa4879956ff1eed500866eecf","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"82cb3cbb4ac28fe8246968149ab62e06"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"82cb3cbb4ac28fe8246968149ab62e06","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"82cb3cbb4ac28fe8246968149ab62e06"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"928530fc-68c0-4b31-9472-71e26e32ec9c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.380824} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b12db8baa4879956ff1eed500866eecf","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077775,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"82cb3cbb4ac28fe8246968149ab62e06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"82cb3cbb4ac28fe8246968149ab62e06","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5cc9fc7-c300-4d4a-b405-f0372b71aeaa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.3890877} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b12db8baa4879956ff1eed500866eecf","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"6f10c50c-f2df-4f6a-87fd-23fe5f8b7d02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.390552} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"82cb3cbb4ac28fe8246968149ab62e06","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5334ddc-05b7-42c6-8861-05191a01ede0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.3967228} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"82cb3cbb4ac28fe8246968149ab62e06","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"6d9467af-9f9f-4e70-9a9a-a7b6b329f7ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.4013355} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b12db8baa4879956ff1eed500866eecf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b12db8baa4879956ff1eed500866eecf"} device-1 | {"level":"info","message":"PATCH /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 35ms","method":"PATCH","requestID":"b12db8baa4879956ff1eed500866eecf","responseTime":35,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b12db8baa4879956ff1eed500866eecf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"b3d8f3c6-2678-43c7-817a-907187938217","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.4120462} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82cb3cbb4ac28fe8246968149ab62e06","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"82cb3cbb4ac28fe8246968149ab62e06"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e70fc156-b26d-47b0-a369-465f77846854? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82cb3cbb4ac28fe8246968149ab62e06"} device-1 | {"level":"info","message":"PATCH /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 37ms","method":"PATCH","requestID":"82cb3cbb4ac28fe8246968149ab62e06","responseTime":37,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"38381064c6491ec7d2f1410124536c65"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"38381064c6491ec7d2f1410124536c65","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38381064c6491ec7d2f1410124536c65"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026005,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38381064c6491ec7d2f1410124536c65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38381064c6491ec7d2f1410124536c65","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"740e2251-8b43-4107-8484-c4802a112b67","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.4321342} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"38381064c6491ec7d2f1410124536c65","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38381064c6491ec7d2f1410124536c65"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38381064c6491ec7d2f1410124536c65"} device-1 | {"level":"info","message":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 12ms","method":"GET","requestID":"38381064c6491ec7d2f1410124536c65","responseTime":12,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"c762f0fc9784684bcb42f4250486d34a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c762f0fc9784684bcb42f4250486d34a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c762f0fc9784684bcb42f4250486d34a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202231,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c762f0fc9784684bcb42f4250486d34a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c762f0fc9784684bcb42f4250486d34a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"a8038b3d-6361-4982-af5d-79544380e5aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.4541945} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c762f0fc9784684bcb42f4250486d34a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c762f0fc9784684bcb42f4250486d34a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c762f0fc9784684bcb42f4250486d34a"} device-1 | {"level":"info","message":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 15ms","method":"GET","requestID":"c762f0fc9784684bcb42f4250486d34a","responseTime":15,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4aa046b9b0dabc612aa63765a8e640e4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.251624,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4aa046b9b0dabc612aa63765a8e640e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4aa046b9b0dabc612aa63765a8e640e4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to run experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to book experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully booked experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998187,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71755,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"dd60cd05-d6ce-4033-8457-e06fdb042bea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.5142756} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"5823ac2b-8860-4db9-aadf-09f5eebd5654","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.5151503} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 16ms","method":"GET","requestID":"387097f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 15ms","method":"GET","requestID":"3870e610-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Setting up experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully set up experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"387d1b10-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully running experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.580065,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.066003,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"ca0758db-bf2a-4e8b-86f7-c4949ab61875","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.598328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"d53a0466-7dbf-4da1-abdc-ea5c3a97830d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.600151} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"359cf632-6125-421d-91d2-3bbfe331863d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6032445} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.699072,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"387d1b10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"387d1b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 30ms","method":"GET","requestID":"387c30b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 28ms","method":"GET","requestID":"387ca5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2654625-62d3-496d-b207-afc6d6445245#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2654625-62d3-496d-b207-afc6d6445245","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"95f1df36-3a6b-4af7-826c-217822fe2ed2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6102185} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ecaa9ca2-b605-4f35-bfa9-3bbc3fb4f8ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6104667} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"387d1b10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling 200 28ms","method":"POST","requestID":"387d1b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"4aa046b9b0dabc612aa63765a8e640e4","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"388160d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3881d600-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72e1cdff-f6fe-46fb-8a3a-88e96d45e63b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6199627} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.537849,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"388160d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","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":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"388160d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"4aa046b9b0dabc612aa63765a8e640e4","responseTime":157,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25832228-e93b-4211-9050-55c56020dd32","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6213894} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.648285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3881d600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3881d600-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"388160d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling 200 12ms","method":"POST","requestID":"388160d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"5bd267cae874eabcf8e5256e57fa3d33"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3881d600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/signaling 200 10ms","method":"POST","requestID":"3881d600-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5bd267cae874eabcf8e5256e57fa3d33","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5bd267cae874eabcf8e5256e57fa3d33"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3883d1d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630597,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bd267cae874eabcf8e5256e57fa3d33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bd267cae874eabcf8e5256e57fa3d33","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b06ada30-137b-46c1-a2ac-2c4a45840bc6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6338391} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.618797,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3883d1d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3883d1d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"d4ab02e7-aa82-48b8-9b65-2c5c8cfdba78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6365204} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bd267cae874eabcf8e5256e57fa3d33","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3883d1d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/signaling 200 12ms","method":"POST","requestID":"3883d1d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5bd267cae874eabcf8e5256e57fa3d33"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bd267cae874eabcf8e5256e57fa3d33"} device-1 | {"level":"info","message":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 18ms","method":"GET","requestID":"5bd267cae874eabcf8e5256e57fa3d33","responseTime":18,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"acf57fea1018805d1d01f0da066819d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acf57fea1018805d1d01f0da066819d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acf57fea1018805d1d01f0da066819d5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967912,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979311,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850942,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"acf57fea1018805d1d01f0da066819d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"acf57fea1018805d1d01f0da066819d5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.262792918Z"}]},"request_id":"7f9597be-f512-43d1-a5a0-30a7d5a9bd6b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6609876} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"5b642d79-8380-4550-a65b-004787cf138b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.664129} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:41.319118047Z"}]},"request_id":"cb8e67c9-67fd-480a-8b41-7e8a850a55c0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6666214} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acf57fea1018805d1d01f0da066819d5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b? 200 29ms","method":"GET","requestID":"388669e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 29ms","method":"GET","requestID":"3886b800-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acf57fea1018805d1d01f0da066819d5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Building connection plan","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acf57fea1018805d1d01f0da066819d5"} 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":"3aaf49a2-5298-447f-a9ae-fdc94464990a"},{"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":"52c3ac98-9c60-4b82-bb99-064907e6863a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5f771953-5273-4eb9-aaa9-65c3ab39ef27"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"GET /devices/e70fc156-b26d-47b0-a369-465f77846854? 200 28ms","method":"GET","requestID":"acf57fea1018805d1d01f0da066819d5","responseTime":28,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.609647,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"9b1cf351-bb27-4c97-9827-9627185e15b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.689842} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f395d4b6-58d5-4520-a35e-b81260b48a7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.6901073} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f'","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f'","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} 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":"388b72f0-86cf-11ef-b00e-2fb111b9dda5","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":"388b72f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4aa046b9b0dabc612aa63765a8e640e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38933b20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd6ebb0e-7ea9-48c8-9f36-2dea0f50e3c4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.7353373} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.4572,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38933b20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38933b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38933b20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling 200 9ms","method":"POST","requestID":"38933b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3894e8d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} device-1 | {"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"029001d9-f334-492e-91c8-97df3e0a04df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.7472847} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.366836,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3894e8d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3894e8d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"canTrickle":true},"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3894e8d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/signaling 200 13ms","method":"POST","requestID":"3894e8d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3419563457415787803 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:1aF4\r\na=ice-pwd:dVG+FpejaouCpglEuxKPBqtI\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B8:45:E6:C5:36:CD:CF:F0:7D:2D:B6:8F:69:CE:9E:60:12:E3:0E:59:7B:DA:F4:5F:A4:77:BF:4E:AE:0D:9D:89\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 446356722079369790 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:2yLd\r\na=ice-pwd:WDokGxkgOpwwHKV7jzqpGPHK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9D:BF:B5:8E:89:20:28:1F:C6:AC:0A:A2:CE:33:E6:39:4F:F9:F2:B3:36:7F:D4:6C:53:1B:62:FB:49:4A:53:83\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:443598143 1 udp 2113937151 2601288b-69a8-4577-8d10-241c17ad4e07.local 41988 typ host generation 0 ufrag 2yLd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2304468012 1 udp 1677729535 141.24.211.56 41988 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 2yLd network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","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/51b0c7da-4a49-4b6f-822c-042456ec6a1b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b'"} device-1 | {"content":{"candidate":"candidate:4272687040 1 udp 2113937151 0772a89b-67a9-4ff3-9783-7108392d74d5.local 46492 typ host generation 0 ufrag 1aF4 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2055302591 1 udp 1677729535 141.24.211.56 46492 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1aF4 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e70fc156-b26d-47b0-a369-465f77846854","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/e70fc156-b26d-47b0-a369-465f77846854'"} device-1 | {"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","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/1839f5e5-c442-44e7-9f05-4835592caa6f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7be44c651fcd9762172db8c7c00a14cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7be44c651fcd9762172db8c7c00a14cc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"}}},"level":"info","message":"received a callback","requestID":"7be44c651fcd9762172db8c7c00a14cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"7be44c651fcd9762172db8c7c00a14cc","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"7be44c651fcd9762172db8c7c00a14cc"} device-1 | {"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","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/1839f5e5-c442-44e7-9f05-4835592caa6f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b37f5008ce034a235a18e060b5ca9e36","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b37f5008ce034a235a18e060b5ca9e36","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"}}},"level":"info","message":"received a callback","requestID":"b37f5008ce034a235a18e060b5ca9e36"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"38a0f6c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1839f5e5-c442-44e7-9f05-4835592caa6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"126038e9-77fb-481c-beb8-de6d39dab715","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.8241305} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.11605,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38a0f6c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","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":"38a0f6c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"38a0f6c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f 200 7ms","method":"GET","requestID":"38a0f6c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"b37f5008ce034a235a18e060b5ca9e36","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"b37f5008ce034a235a18e060b5ca9e36"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38a56390-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3dd752d-eb73-436a-8237-9c3ce19eac9b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.8530383} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.12263,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38a56390-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38a56390-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38a56390-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling 200 7ms","method":"POST","requestID":"38a56390-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38a6c320-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"951e0842-982b-4a50-93f0-eaaf36d3bb7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.8625958} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.191896,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38a6c320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38a6c320-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38a6c320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/signaling 200 8ms","method":"POST","requestID":"38a6c320-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"bf8ed36e1be32aff6ff3d036cb913ada"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bf8ed36e1be32aff6ff3d036cb913ada","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a2654625-62d3-496d-b207-afc6d6445245","requestID":"bf8ed36e1be32aff6ff3d036cb913ada"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.188291,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bf8ed36e1be32aff6ff3d036cb913ada","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bf8ed36e1be32aff6ff3d036cb913ada","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a2654625-62d3-496d-b207-afc6d6445245","requestID":"bf8ed36e1be32aff6ff3d036cb913ada"} gateway-1 | {"time_local":"10/Oct/2024:06:16:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a2654625-62d3-496d-b207-afc6d6445245 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf8ed36e1be32aff6ff3d036cb913ada"} experiment-1 | {"level":"info","message":"GET /experiments/a2654625-62d3-496d-b207-afc6d6445245 200 13ms","method":"GET","requestID":"bf8ed36e1be32aff6ff3d036cb913ada","responseTime":13,"status":200,"url":"/experiments/a2654625-62d3-496d-b207-afc6d6445245"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8","level":"info","message":"auth send jwt","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8addd5603ded1c408bcb6ea5696fad1c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a2654625-62d3-496d-b207-afc6d6445245","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.293187,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8addd5603ded1c408bcb6ea5696fad1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8addd5603ded1c408bcb6ea5696fad1c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Attempting to finish experiment","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.071188,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541003,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwM30.V0wviil0tqMOfshyCrIMO4CZYm7QoeQvdLGhGcrCTP8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","device":"e70fc156-b26d-47b0-a369-465f77846854","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f","device":"51b0c7da-4a49-4b6f-822c-042456ec6a1b","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/1839f5e5-c442-44e7-9f05-4835592caa6f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"347864c295034dda582568be8fbc3216","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"347864c295034dda582568be8fbc3216","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1839f5e5-c442-44e7-9f05-4835592caa6f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1839f5e5-c442-44e7-9f05-4835592caa6f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"ceb486ed-4ee6-45e6-aa2d-4942104d0b79","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.9528065} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5513e871-ce08-4e0f-8fff-c13df0ef16a4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.9530582} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a16b8068689959b0e7881bb62199fc9b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"}}},"level":"info","message":"received a callback","requestID":"347864c295034dda582568be8fbc3216"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a16b8068689959b0e7881bb62199fc9b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"}}},"level":"info","message":"received a callback","requestID":"a16b8068689959b0e7881bb62199fc9b"} device-1 | {"data":{"peerconnection":"1839f5e5-c442-44e7-9f05-4835592caa6f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f 204 35ms","method":"DELETE","requestID":"38b282f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":35,"status":204,"url":"/peerconnections/1839f5e5-c442-44e7-9f05-4835592caa6f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a2654625-62d3-496d-b207-afc6d6445245"},"level":"info","message":"Successfully finished experiment","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38bac050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51b0c7da-4a49-4b6f-822c-042456ec6a1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e18f3da4-a1bd-4fab-91f9-840417e8f4fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541003.9965506} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.960434,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38bac050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b","object_type":"device","rebac_allow":false,"scope_allow":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":"38bac050-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38bac050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling 200 13ms","method":"POST","requestID":"38bac050-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/51b0c7da-4a49-4b6f-822c-042456ec6a1b/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2654625-62d3-496d-b207-afc6d6445245': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa2654625-62d3-496d-b207-afc6d6445245","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0a9f8972-696c-4933-8a5c-e72f7c84a6fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.0026565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0f433b2-3628-421f-9f13-5ef6bdee1deb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.0032763} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38bd0a40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8addd5603ded1c408bcb6ea5696fad1c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:44Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe70fc156-b26d-47b0-a369-465f77846854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b549b056-9fa4-445f-8de0-8e57ba610ecd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.0093129} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.723443,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"38bd0a40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"38bd0a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38bd0a40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e70fc156-b26d-47b0-a369-465f77846854/signaling 200 12ms","method":"POST","requestID":"38bd0a40-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/e70fc156-b26d-47b0-a369-465f77846854/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a2654625-62d3-496d-b207-afc6d6445245","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a2654625-62d3-496d-b207-afc6d6445245 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8addd5603ded1c408bcb6ea5696fad1c"} experiment-1 | {"level":"info","message":"DELETE /experiments/a2654625-62d3-496d-b207-afc6d6445245 204 148ms","method":"DELETE","requestID":"8addd5603ded1c408bcb6ea5696fad1c","responseTime":148,"status":204,"url":"/experiments/a2654625-62d3-496d-b207-afc6d6445245"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"347864c295034dda582568be8fbc3216","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"347864c295034dda582568be8fbc3216"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"a16b8068689959b0e7881bb62199fc9b","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"a16b8068689959b0e7881bb62199fc9b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNH0.hsBjABmYQe9Z6pcyIFWzGI2UobQkuXDP6SvrDlvAgw4","level":"info","message":"auth send jwt","requestID":"b1de2b7a873f94033a64ba2993c0f14f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1de2b7a873f94033a64ba2993c0f14f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b1de2b7a873f94033a64ba2993c0f14f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3316","request_time":"0.731","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b654b343908226d3a38795209edc566a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:44Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.745","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f67285e03437ded85cf56b32303cec0f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.381875,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b1de2b7a873f94033a64ba2993c0f14f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541004,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNH0.hsBjABmYQe9Z6pcyIFWzGI2UobQkuXDP6SvrDlvAgw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","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/51b0c7da-4a49-4b6f-822c-042456ec6a1b' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e70fc156-b26d-47b0-a369-465f77846854' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eaae41d1-9084-49c4-bf0b-3fbf1076401d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1052022} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c329dc6b-d04d-463a-a528-65d60dd10653","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1097238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a8a0b4b8-55c3-407a-b96e-48d4a443d909","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1214876} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b094a1be-6427-49a9-94ac-9050f7cdf24b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1215808} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"0b11f189-eca7-4b31-b36f-3a3f5c7c2eee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.126245} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b1de2b7a873f94033a64ba2993c0f14f"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1de2b7a873f94033a64ba2993c0f14f"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"b1de2b7a873f94033a64ba2993c0f14f","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNH0.hsBjABmYQe9Z6pcyIFWzGI2UobQkuXDP6SvrDlvAgw4","level":"info","message":"auth send jwt","requestID":"f2f8b96127441ef40e40634d9d936c12"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f2f8b96127441ef40e40634d9d936c12"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.683375,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f2f8b96127441ef40e40634d9d936c12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541004,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNH0.hsBjABmYQe9Z6pcyIFWzGI2UobQkuXDP6SvrDlvAgw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c1fb0c8-d314-4f6a-b401-96f8fd4a0717","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1507454} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f21b2a9b-fe7b-4086-939f-560819853bda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1553721} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"9678b0e0-9173-4fbd-b1da-e27f4a085570","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.163788} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d35e662-d810-4308-8458-ae0f11c5e2c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.1639225} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"d3ce0681-2ab3-4fa7-8db9-0f90a7aefe2c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541004.170108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f2f8b96127441ef40e40634d9d936c12"} gateway-1 | {"time_local":"10/Oct/2024:06:16:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2f8b96127441ef40e40634d9d936c12"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"f2f8b96127441ef40e40634d9d936c12","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d485539d623962b3d0985c64aa3fa70b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d485539d623962b3d0985c64aa3fa70b","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa2c2754f2e0b393433465bcf2549aae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aa2c2754f2e0b393433465bcf2549aae","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/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":"d485539d623962b3d0985c64aa3fa70b"} device-1 | {"level":"info","message":"OPTIONS /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/websocket 200 0ms","method":"OPTIONS","requestID":"d485539d623962b3d0985c64aa3fa70b","responseTime":0,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/97ce0683-4c2d-4605-aa39-324f9605b776/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":"aa2c2754f2e0b393433465bcf2549aae"} device-1 | {"level":"info","message":"OPTIONS /devices/97ce0683-4c2d-4605-aa39-324f9605b776/websocket 200 0ms","method":"OPTIONS","requestID":"aa2c2754f2e0b393433465bcf2549aae","responseTime":0,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"7ab61625aa6a357ca55f9f3d729b181d"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"7ab61625aa6a357ca55f9f3d729b181d","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"e41144ac8a888faef1ae381f576d6f44"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e41144ac8a888faef1ae381f576d6f44","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7ab61625aa6a357ca55f9f3d729b181d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e41144ac8a888faef1ae381f576d6f44"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985375,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7ab61625aa6a357ca55f9f3d729b181d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ab61625aa6a357ca55f9f3d729b181d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.536438,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e41144ac8a888faef1ae381f576d6f44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e41144ac8a888faef1ae381f576d6f44","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e41144ac8a888faef1ae381f576d6f44"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e41144ac8a888faef1ae381f576d6f44"} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/websocket 200 10ms","method":"POST","requestID":"e41144ac8a888faef1ae381f576d6f44","responseTime":10,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7ab61625aa6a357ca55f9f3d729b181d"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/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":"7ab61625aa6a357ca55f9f3d729b181d"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/websocket 200 22ms","method":"POST","requestID":"7ab61625aa6a357ca55f9f3d729b181d","responseTime":22,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ba277bbebd454dda020f8bbae880b21","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9ba277bbebd454dda020f8bbae880b21","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/97ce0683-4c2d-4605-aa39-324f9605b776? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9ba277bbebd454dda020f8bbae880b21"} device-1 | {"level":"info","message":"OPTIONS /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 1ms","method":"OPTIONS","requestID":"9ba277bbebd454dda020f8bbae880b21","responseTime":1,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"2e128672773c9c2f244ffa3f3f564c76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e128672773c9c2f244ffa3f3f564c76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2e128672773c9c2f244ffa3f3f564c76"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e7d2f61de19e42f059cc19ff64187da2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e7d2f61de19e42f059cc19ff64187da2","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e7d2f61de19e42f059cc19ff64187da2"} device-1 | {"level":"info","message":"OPTIONS /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 0ms","method":"OPTIONS","requestID":"e7d2f61de19e42f059cc19ff64187da2","responseTime":0,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e128672773c9c2f244ffa3f3f564c76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e128672773c9c2f244ffa3f3f564c76","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"5d96d22898fd47c5e06c70f0a36eae22"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5d96d22898fd47c5e06c70f0a36eae22","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5d96d22898fd47c5e06c70f0a36eae22"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"0dbb17f5-9336-44df-9aeb-3a4189dd210c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.2581418} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2e128672773c9c2f244ffa3f3f564c76","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942841,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d96d22898fd47c5e06c70f0a36eae22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d96d22898fd47c5e06c70f0a36eae22","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ecbb06d-678e-41c3-ad71-5117f5103b7c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.265504} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2e128672773c9c2f244ffa3f3f564c76","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"eca43c08-49cb-47b2-8985-81f4b8bf386f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.277228} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2e128672773c9c2f244ffa3f3f564c76","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"1645caea-9a03-461a-bf7e-378d7366d545","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.2792706} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2e128672773c9c2f244ffa3f3f564c76"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d96d22898fd47c5e06c70f0a36eae22","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/97ce0683-4c2d-4605-aa39-324f9605b776? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2e128672773c9c2f244ffa3f3f564c76"} device-1 | {"level":"info","message":"PATCH /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 37ms","method":"PATCH","requestID":"2e128672773c9c2f244ffa3f3f564c76","responseTime":37,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0575330-16fe-4a1d-b731-73b67f1747fa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.2866414} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5d96d22898fd47c5e06c70f0a36eae22","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"bdbf3b39-28b8-4402-ad8a-0a7d30bfddba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.3039014} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d96d22898fd47c5e06c70f0a36eae22","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5d96d22898fd47c5e06c70f0a36eae22"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.056","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d96d22898fd47c5e06c70f0a36eae22"} device-1 | {"level":"info","message":"PATCH /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 49ms","method":"PATCH","requestID":"5d96d22898fd47c5e06c70f0a36eae22","responseTime":49,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687471,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"16cdc73e-9661-4b08-adc3-72feb8de0e68","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.3271933} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a"} device-1 | {"level":"info","message":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 15ms","method":"GET","requestID":"b1a3f8c15dc69c8a4cd2ae8831a1510a","responseTime":15,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38616,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"e8b8cf73-f9a9-4053-b399-f71a9f6c1085","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.3504806} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1"} device-1 | {"level":"info","message":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 18ms","method":"GET","requestID":"c4cd5f3ff34dc3a13492ddc73f2c08c1","responseTime":18,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"e742eb1b4263e67f903fc97bd870f816"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e742eb1b4263e67f903fc97bd870f816","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e742eb1b4263e67f903fc97bd870f816"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.95742,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e742eb1b4263e67f903fc97bd870f816","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e742eb1b4263e67f903fc97bd870f816","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to run experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to book experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully booked experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603727,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919974,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"930cdf9e-ffa3-4651-931c-8e398c6e69b9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4082527} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"203b0417-3a8a-4dfc-8616-e4c01cf68454","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4096498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 16ms","method":"GET","requestID":"3a2a55e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 16ms","method":"GET","requestID":"3a2a7cf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Setting up experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully set up experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a355260-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully running experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265757,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879167,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.206044,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db59a436-d827-4029-a59e-8f2811e19df4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4772847} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a355260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","rebac_allow":false,"scope_allow":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":"3a355260-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"485ae251-2026-4646-83e9-513675b9b2be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4810944} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a355260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling 200 14ms","method":"POST","requestID":"3a355260-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"8c48e2cc-75a2-4dc4-bdc0-13ef6b776949","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4851968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a37ea70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 24ms","method":"GET","requestID":"3a34dd30-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b98b6ce7-7b3c-42f5-94de-c27bcc6c9ff0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4924061} device-1 | {"level":"info","message":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 24ms","method":"GET","requestID":"3a352b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.072932,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a37ea70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a37ea70-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a3922f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a37ea70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbda624b1-8b32-463a-bdb4-6eeedb3f3333#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbda624b1-8b32-463a-bdb4-6eeedb3f3333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"06636cdf-9263-4c28-8606-98301d07c5f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4983778} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"121a2e35-ec82-44d2-92f8-c5faa2559f20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.4986017} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling 200 13ms","method":"POST","requestID":"3a37ea70-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"e742eb1b4263e67f903fc97bd870f816","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0197f896-c512-4945-97e3-0f50e326d8b2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.50148} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.641885,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a3922f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a3922f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a3922f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling 200 10ms","method":"POST","requestID":"3a3922f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e742eb1b4263e67f903fc97bd870f816"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a3b1ec0-86cf-11ef-b00e-2fb111b9dda5"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"e742eb1b4263e67f903fc97bd870f816","responseTime":145,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6cb3b65-ee65-4abd-91fb-cb0385d8f246","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5125453} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.444507,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a3b1ec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"7b38b03c9f08d542f8f29d41217169a1"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a3b1ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b38b03c9f08d542f8f29d41217169a1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b38b03c9f08d542f8f29d41217169a1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a3b1ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling 200 10ms","method":"POST","requestID":"3a3b1ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872287,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7b38b03c9f08d542f8f29d41217169a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b38b03c9f08d542f8f29d41217169a1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706945,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.792162,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"07d190b0-3b74-4e72-92a0-005c16821bb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5299563} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7b38b03c9f08d542f8f29d41217169a1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.121467639Z"}]},"request_id":"b1a85acd-0a01-4e2b-bc60-31bda59f97a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5334315} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b38b03c9f08d542f8f29d41217169a1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"29f16667-6d9b-4d8f-947b-e9861437b885","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.536591} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b38b03c9f08d542f8f29d41217169a1"} device-1 | {"level":"info","message":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 22ms","method":"GET","requestID":"7b38b03c9f08d542f8f29d41217169a1","responseTime":22,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"1919e99465f00e6acc4b32ccff71aec1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1919e99465f00e6acc4b32ccff71aec1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 21ms","method":"GET","requestID":"3a3d41a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aec3f84f-deb6-4dc8-9733-a869c7058100? 200 23ms","method":"GET","requestID":"3a3d1a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1919e99465f00e6acc4b32ccff71aec1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Building connection plan","requestID":"e742eb1b4263e67f903fc97bd870f816"} 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":"bfe357ff-0a40-4051-947b-086d069d7458"},{"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":"b0ad0d26-32cd-40d2-8023-320f8f805e0b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"cbf67e0f-31b3-4243-8a10-2d1053ab73c9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e742eb1b4263e67f903fc97bd870f816"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e742eb1b4263e67f903fc97bd870f816"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080054,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1919e99465f00e6acc4b32ccff71aec1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1919e99465f00e6acc4b32ccff71aec1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.679626,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:44.163752158Z"}]},"request_id":"8cf7793d-1203-45ba-a028-813328643b6e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5545242} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1919e99465f00e6acc4b32ccff71aec1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1919e99465f00e6acc4b32ccff71aec1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1919e99465f00e6acc4b32ccff71aec1"} device-1 | {"level":"info","message":"GET /devices/97ce0683-4c2d-4605-aa39-324f9605b776? 200 15ms","method":"GET","requestID":"1919e99465f00e6acc4b32ccff71aec1","responseTime":15,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"16de8777-65a2-41bd-bd15-5baf59f96577","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5620642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25655b58-6a2a-4159-bd15-eda9d9e9fdbd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.5623348} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268'","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268'","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} 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":"3a411230-86cf-11ef-b00e-2fb111b9dda5","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":"3a411230-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e742eb1b4263e67f903fc97bd870f816"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a4a12e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4edc5245-5c43-49db-90a7-e8eb337faeb2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.6117437} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107035,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a4a12e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a4a12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a4a12e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling 200 10ms","method":"POST","requestID":"3a4a12e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling"} device-1 | {"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a4c0eb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cc4d0a3-f0f8-49be-ad29-2f6d2c4cef61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.6244113} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.791755,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a4c0eb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a4c0eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a4c0eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling 200 11ms","method":"POST","requestID":"3a4c0eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7320677598368262282 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:6ltm\r\na=ice-pwd:9bXhooT3h58VFs56XsX9q16W\r\na=ice-options:trickle\r\na=fingerprint:sha-256 02:0C:59:75:E4:5E:84:D4:B2:69:2D:13:B9:DB:38:43:2F:6C:D9:D0:4A:3B:CB:19:77:D5:22:C7:28:C3:95:53\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8219631240619019605 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:wis+\r\na=ice-pwd:zwTGyArwvT7MXgJcG3I9rv7Z\r\na=ice-options:trickle\r\na=fingerprint:sha-256 73:84:8E:87:B7:28:E0:E1:D8:30:EB:75:C4:DB:90:38:8B:30:BD:D5:2D:7F:B2:FE:70:79:80:2F:C8:60:76:69\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:191705617 1 udp 2113937151 46f84a1c-6e2e-4355-8dcd-4b6ad1338fa9.local 48202 typ host generation 0 ufrag wis+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1475675815 1 udp 1677729535 141.24.211.56 48202 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wis+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"97ce0683-4c2d-4605-aa39-324f9605b776","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/97ce0683-4c2d-4605-aa39-324f9605b776'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776'"} device-1 | {"content":{"candidate":"candidate:1659523495 1 udp 2113937151 b4b73cf5-a0fe-4944-a008-daa219369a73.local 58591 typ host generation 0 ufrag 6ltm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3871816664 1 udp 1677729535 141.24.211.56 58591 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 6ltm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","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/aec3f84f-deb6-4dc8-9733-a869c7058100'"} device-1 | {"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"97ce0683-4c2d-4605-aa39-324f9605b776","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/595da60d-d14c-41cd-87c2-c387889e9268' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65f95419238adc93ccc580050f38785f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"65f95419238adc93ccc580050f38785f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"aec3f84f-deb6-4dc8-9733-a869c7058100","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"}}},"level":"info","message":"received a callback","requestID":"65f95419238adc93ccc580050f38785f"} device-1 | {"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"65f95419238adc93ccc580050f38785f","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"65f95419238adc93ccc580050f38785f"} device-1 | {"device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","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/595da60d-d14c-41cd-87c2-c387889e9268' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1ef248b72fac32de624f96113119a07","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e1ef248b72fac32de624f96113119a07","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"}}},"level":"info","message":"received a callback","requestID":"e1ef248b72fac32de624f96113119a07"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3a57ce80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F595da60d-d14c-41cd-87c2-c387889e9268","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9157d18e-71c0-4089-a671-67ade65653e1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.700279} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.114637,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a57ce80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","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":"3a57ce80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3a57ce80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/595da60d-d14c-41cd-87c2-c387889e9268 200 7ms","method":"GET","requestID":"3a57ce80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"e1ef248b72fac32de624f96113119a07","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"e1ef248b72fac32de624f96113119a07"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a5c3b50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c9fe2c7-d176-4659-8c63-02a4df2d41e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.7291486} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.121869,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a5c3b50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a5c3b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a5c3b50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling 200 8ms","method":"POST","requestID":"3a5c3b50-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a5d9ae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef92a7b6-f1b0-44b6-99e6-045e546df568","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.7386954} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.033004,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a5d9ae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a5d9ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a5d9ae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling 200 8ms","method":"POST","requestID":"3a5d9ae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"b41d88e788cb4d9245cdaa65e052beed"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b41d88e788cb4d9245cdaa65e052beed","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","requestID":"b41d88e788cb4d9245cdaa65e052beed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.653309,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b41d88e788cb4d9245cdaa65e052beed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b41d88e788cb4d9245cdaa65e052beed","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","requestID":"b41d88e788cb4d9245cdaa65e052beed"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b41d88e788cb4d9245cdaa65e052beed"} experiment-1 | {"level":"info","message":"GET /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333 200 8ms","method":"GET","requestID":"b41d88e788cb4d9245cdaa65e052beed","responseTime":8,"status":200,"url":"/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d70ec19b55b08c2a4b1e42826299ebe0","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.683682,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d70ec19b55b08c2a4b1e42826299ebe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d70ec19b55b08c2a4b1e42826299ebe0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Attempting to finish experiment","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.892693,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","device":"97ce0683-4c2d-4605-aa39-324f9605b776","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268","device":"aec3f84f-deb6-4dc8-9733-a869c7058100","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/595da60d-d14c-41cd-87c2-c387889e9268' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F595da60d-d14c-41cd-87c2-c387889e9268': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F595da60d-d14c-41cd-87c2-c387889e9268","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0f37e7db-8194-40e3-83e2-94c7ade25907","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.813975} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f7edee4-f097-4863-9aa5-fc73f2a15a13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.8141606} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc9c9a252cf177d340bd513af1fb0f03","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bc9c9a252cf177d340bd513af1fb0f03","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d15f3058b72855844ac92205d3b68be3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d15f3058b72855844ac92205d3b68be3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"}}},"level":"info","message":"received a callback","requestID":"bc9c9a252cf177d340bd513af1fb0f03"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"}}},"level":"info","message":"received a callback","requestID":"d15f3058b72855844ac92205d3b68be3"} device-1 | {"data":{"peerconnection":"595da60d-d14c-41cd-87c2-c387889e9268","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/595da60d-d14c-41cd-87c2-c387889e9268 204 34ms","method":"DELETE","requestID":"3a6785f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":34,"status":204,"url":"/peerconnections/595da60d-d14c-41cd-87c2-c387889e9268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"},"level":"info","message":"Successfully finished experiment","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a6f0000-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97ce0683-4c2d-4605-aa39-324f9605b776","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74dfdb35-5282-4ba8-b377-ca09d8677a4d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.8528879} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.170023,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a6f0000-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97ce0683-4c2d-4605-aa39-324f9605b776","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a6f0000-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a6f0000-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling 200 8ms","method":"POST","requestID":"3a6f0000-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/97ce0683-4c2d-4605-aa39-324f9605b776/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a7086a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbda624b1-8b32-463a-bdb4-6eeedb3f3333': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbda624b1-8b32-463a-bdb4-6eeedb3f3333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"06f11c43-f6a4-47a6-94fe-547e7ab2885d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.8601542} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86b02b94-40a6-4510-9ff6-c611e8ecf53a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.8602877} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d70ec19b55b08c2a4b1e42826299ebe0","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faec3f84f-deb6-4dc8-9733-a869c7058100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0bae544-8818-4ed2-a301-712d54b052b7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.8633437} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.838483,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a7086a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a7086a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a7086a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling 200 9ms","method":"POST","requestID":"3a7086a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/aec3f84f-deb6-4dc8-9733-a869c7058100/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d70ec19b55b08c2a4b1e42826299ebe0"} experiment-1 | {"level":"info","message":"DELETE /experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333 204 136ms","method":"DELETE","requestID":"d70ec19b55b08c2a4b1e42826299ebe0","responseTime":136,"status":204,"url":"/experiments/bda624b1-8b32-463a-bdb4-6eeedb3f3333"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"bc9c9a252cf177d340bd513af1fb0f03","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"bc9c9a252cf177d340bd513af1fb0f03"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"d15f3058b72855844ac92205d3b68be3","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"d15f3058b72855844ac92205d3b68be3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"2a51c157563374b0e9fc6b1849d02bd1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a51c157563374b0e9fc6b1849d02bd1","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3319","request_time":"0.718","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bd812024a803f30c80e955aa0b1f5be3"} device-1 | {"level":"info","message":"postDevices called","requestID":"2a51c157563374b0e9fc6b1849d02bd1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.793446,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2a51c157563374b0e9fc6b1849d02bd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"0.741","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3dff2620ae45a31c07e0bfc9204057d8"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/aec3f84f-deb6-4dc8-9733-a869c7058100' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e1a70b4b-2792-49be-b0ba-f53b54ca6ced","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.9622166} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","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/97ce0683-4c2d-4605-aa39-324f9605b776' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5df16ca3-5394-475d-bcaa-3e86274ba8c7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.966912} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"092d9ad7-8fc0-4493-a46d-345496ca7b32","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.9826567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7922bf92-b128-45aa-86e9-9ab2de90afa8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.982926} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"fc604dad-2256-45ec-9876-2857e828e1aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541006.9867775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2a51c157563374b0e9fc6b1849d02bd1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a51c157563374b0e9fc6b1849d02bd1"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"2a51c157563374b0e9fc6b1849d02bd1","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs","level":"info","message":"auth send jwt","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.895226,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541006,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwNn0.rFn5VpmwGQwuqlcVjh0PzIi-arcX7ZAAIVKWzA66yjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e39ac4f0-31ff-4743-8d6d-7bda9ee19eb0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.0083969} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adff3c65-9cac-4d78-a09f-b201f6d5a99c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.0120873} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3550f283-1742-4acd-987a-d7651a40814b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.021669} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52492da3-c952-4063-a366-f5733d34eec2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.0217664} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"5a022858-a365-4a63-91a2-c3ec85990efd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.0258043} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"ab63651349cdcb9bdc87d75c0b7a04a4","responseTime":35,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwN30.KarkmDUMEwm4G7Fw6xBiAeTrZIljbzd-j2DmjlolEnA","level":"info","message":"auth send jwt","requestID":"44f1dfb7d520969a69f9a65e14e051be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"44f1dfb7d520969a69f9a65e14e051be","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"44f1dfb7d520969a69f9a65e14e051be"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992074,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44f1dfb7d520969a69f9a65e14e051be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541007,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwN30.KarkmDUMEwm4G7Fw6xBiAeTrZIljbzd-j2DmjlolEnA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44f1dfb7d520969a69f9a65e14e051be","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"872cf9dd-94be-4156-b965-8fefaba42490","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.51445} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"44f1dfb7d520969a69f9a65e14e051be","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a348affe-d103-47cb-b270-9224c3569fcb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.5199883} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"44f1dfb7d520969a69f9a65e14e051be","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"e6b3de06-9987-4982-b831-3dd4ad55d165","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541007.5317113} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"44f1dfb7d520969a69f9a65e14e051be","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"44f1dfb7d520969a69f9a65e14e051be"} gateway-1 | {"time_local":"10/Oct/2024:06:16:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"44f1dfb7d520969a69f9a65e14e051be"} device-1 | {"level":"info","message":"PATCH /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763 200 31ms","method":"PATCH","requestID":"44f1dfb7d520969a69f9a65e14e051be","responseTime":31,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwN30.KarkmDUMEwm4G7Fw6xBiAeTrZIljbzd-j2DmjlolEnA","level":"info","message":"auth send jwt","requestID":"29e583762bc0e0a005fa92f352c39abc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"29e583762bc0e0a005fa92f352c39abc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"29e583762bc0e0a005fa92f352c39abc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.004415,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"29e583762bc0e0a005fa92f352c39abc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541007,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwN30.KarkmDUMEwm4G7Fw6xBiAeTrZIljbzd-j2DmjlolEnA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"29e583762bc0e0a005fa92f352c39abc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"29e583762bc0e0a005fa92f352c39abc"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/websocket 200 20ms","method":"POST","requestID":"29e583762bc0e0a005fa92f352c39abc","responseTime":20,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"29e583762bc0e0a005fa92f352c39abc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1af30db8fa9cbf3d021aaeb2c7eb013a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1af30db8fa9cbf3d021aaeb2c7eb013a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/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":"1af30db8fa9cbf3d021aaeb2c7eb013a"} device-1 | {"level":"info","message":"OPTIONS /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/websocket 200 1ms","method":"OPTIONS","requestID":"1af30db8fa9cbf3d021aaeb2c7eb013a","responseTime":1,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281612,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c2652f2ebc47d8e1dab813585f2e8cf8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8"} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/websocket 200 23ms","method":"POST","requestID":"c2652f2ebc47d8e1dab813585f2e8cf8","responseTime":23,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/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":"c2652f2ebc47d8e1dab813585f2e8cf8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df57a0e3574324fd6886aa520e2acb9d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"df57a0e3574324fd6886aa520e2acb9d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"df57a0e3574324fd6886aa520e2acb9d"} device-1 | {"level":"info","message":"OPTIONS /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 1ms","method":"OPTIONS","requestID":"df57a0e3574324fd6886aa520e2acb9d","responseTime":1,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"0c492e8b0b96c838837d540c093da21e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c492e8b0b96c838837d540c093da21e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0c492e8b0b96c838837d540c093da21e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270355,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0c492e8b0b96c838837d540c093da21e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c492e8b0b96c838837d540c093da21e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"af4ba249-ba06-45af-a52e-99ac6fc01265","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.099071} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c492e8b0b96c838837d540c093da21e","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc970b2c-384f-423c-8359-3d5e8c2fa3b0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.1063797} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0c492e8b0b96c838837d540c093da21e","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"a45faa2c-4d2e-4ffb-bdaa-a33b91c77f7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.1190758} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c492e8b0b96c838837d540c093da21e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0c492e8b0b96c838837d540c093da21e"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0c492e8b0b96c838837d540c093da21e"} device-1 | {"level":"info","message":"PATCH /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 37ms","method":"PATCH","requestID":"0c492e8b0b96c838837d540c093da21e","responseTime":37,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"7a1bf6d4e84f3e39022da786f010f480"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7a1bf6d4e84f3e39022da786f010f480","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a1bf6d4e84f3e39022da786f010f480"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192943,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a1bf6d4e84f3e39022da786f010f480","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a1bf6d4e84f3e39022da786f010f480","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"1b8b4bb3-15f4-43a9-9678-fd13f2d37a29","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.1493409} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7a1bf6d4e84f3e39022da786f010f480","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a1bf6d4e84f3e39022da786f010f480"} device-1 | {"level":"info","message":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 18ms","method":"GET","requestID":"7a1bf6d4e84f3e39022da786f010f480","responseTime":18,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a1bf6d4e84f3e39022da786f010f480"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"bdbabe2d25d6848faad0e4c022c645f0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bdbabe2d25d6848faad0e4c022c645f0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bdbabe2d25d6848faad0e4c022c645f0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114708,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bdbabe2d25d6848faad0e4c022c645f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bdbabe2d25d6848faad0e4c022c645f0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"b86cf13f-6133-4ddb-81fc-11862621e434","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.1753137} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"bdbabe2d25d6848faad0e4c022c645f0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bdbabe2d25d6848faad0e4c022c645f0"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdbabe2d25d6848faad0e4c022c645f0"} device-1 | {"level":"info","message":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? 200 21ms","method":"GET","requestID":"bdbabe2d25d6848faad0e4c022c645f0","responseTime":21,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"52cfe0fb592b4f64c1b937351cc3c97e","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.416736,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52cfe0fb592b4f64c1b937351cc3c97e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"52cfe0fb592b4f64c1b937351cc3c97e","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to run experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to book experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully booked experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161454,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"ef0a51d7-90f2-47ec-8616-e4042f0927a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.250541} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"76fe4a09-f545-4a71-a9c6-05fc2e684255","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.2517457} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 19ms","method":"GET","requestID":"3bdbd670-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? 200 18ms","method":"GET","requestID":"3bdc2490-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Setting up experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully locked booking for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to update booking for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully updated booking for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully set up experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3be684d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully running experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961143,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836473,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36858","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.871738,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a1134bc-10ff-4d64-a7fd-b40df9d86810","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3148682} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3be684d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","rebac_allow":false,"scope_allow":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":"3be684d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"b7b61410-046b-4281-9d02-adbf10a13e5c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3198638} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3be684d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling 200 13ms","method":"POST","requestID":"3be684d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"daa7285c-4c68-4cff-8237-2ec6ffc6d16c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.322472} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3be91ce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 22ms","method":"GET","requestID":"3be60fa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? 200 21ms","method":"GET","requestID":"3be65dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3be9e030-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"123bda75-b3c8-4ece-bf57-95c87e94b6c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3311667} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.468084,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3be91ce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3be91ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa8e2998c-cf3b-4d29-ae8c-6350f3d16593#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa8e2998c-cf3b-4d29-ae8c-6350f3d16593","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5d1e51ff-b8fd-495d-baac-6f513682588b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3325531} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08416893-90f9-4a15-b2db-2c419af6ecfd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3329248} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3be91ce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling 200 9ms","method":"POST","requestID":"3be91ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"52cfe0fb592b4f64c1b937351cc3c97e","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9521f169-808c-4582-a773-947da5326bfa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3393595} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.973988,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3be9e030-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3be9e030-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"52cfe0fb592b4f64c1b937351cc3c97e","responseTime":148,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3be9e030-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling 200 13ms","method":"POST","requestID":"3be9e030-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3bec0310-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"d431e3895632f88f18b218cdd30cda89"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d431e3895632f88f18b218cdd30cda89","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d431e3895632f88f18b218cdd30cda89"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0acc2308-9452-47ac-9f12-ccc533bb081c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3498948} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.277341,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bec0310-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bec0310-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896451,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d431e3895632f88f18b218cdd30cda89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d431e3895632f88f18b218cdd30cda89","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3bec0310-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling 200 10ms","method":"POST","requestID":"3bec0310-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"dc849b20-42fd-4546-bc0e-631d80a6530f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3563333} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d431e3895632f88f18b218cdd30cda89","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d431e3895632f88f18b218cdd30cda89"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.86522,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d431e3895632f88f18b218cdd30cda89"} device-1 | {"level":"info","message":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 13ms","method":"GET","requestID":"d431e3895632f88f18b218cdd30cda89","responseTime":14,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40402","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700454,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E","level":"info","message":"auth send jwt","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:46.982622208Z"}]},"request_id":"8a963138-e21a-492b-be37-ddd186f23bd5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3657496} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"2ddf6809-d773-4b03-959a-9dd9e926f5f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3665192} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693651,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} device-1 | {"level":"info","message":"GET /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b? 200 13ms","method":"GET","requestID":"3bedd7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? 200 12ms","method":"GET","requestID":"3bee25f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Building connection plan","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} 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":"4ee5b0cc-09ab-4201-92b5-3e80506ac146"},{"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":"3b33db9b-3995-4126-8fff-9a8c3e09dc68"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"48bc7637-2214-4ba5-9369-9dd03c7400b0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:47.021643930Z"}]},"request_id":"5a12bbbd-dd6e-4023-9260-6e60db84ad93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3765678} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.853825,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541009,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAwOX0.lpB6hlW_xBJ21Ex-M3OhYhwV8C5hmRp8cPLcrvU-03E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2"} gateway-1 | {"time_local":"10/Oct/2024:06:16:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2"} device-1 | {"level":"info","message":"GET /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763? 200 18ms","method":"GET","requestID":"8ebf8a10787c65b7cbfdc56193e0e4c2","responseTime":18,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7dce38a2-1b11-4aa6-9f16-868ce50b0bb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3922663} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ce9ed34-841d-425b-bea9-9495e1508efa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.3925784} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744'","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744'","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} 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":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5","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":"3bf048d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"52cfe0fb592b4f64c1b937351cc3c97e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3bfa33e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bae33c9-155e-46f4-aa0d-62f14f775750","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.4423928} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.165988,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bfa33e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3bfa33e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3bfa33e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling 200 8ms","method":"POST","requestID":"3bfa33e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3bfbba80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70b6a076-1a73-46e8-8725-66c17b31f200","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541009.4526966} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.218482,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3bfbba80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3bfbba80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3bfbba80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling 200 9ms","method":"POST","requestID":"3bfbba80-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling"} device-1 | {"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8367639101379484834 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:i/NZ\r\na=ice-pwd:ZTE4zO4vuqvpE2fMtM+7oK9i\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F2:52:2F:EE:19:1E:25:DF:5D:CB:32:E2:F5:CB:7F:75:EB:87:DB:1F:52:EC:61:ED:26:9B:01:9E:B1:C4:DC:5A\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:212000364 1 udp 2113937151 12130cbf-200a-40e2-b824-93b0ef07d717.local 34633 typ host generation 0 ufrag i/NZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:788287713 1 udp 1677729535 141.24.211.56 34633 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag i/NZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","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/b43926b9-9c1b-4c66-b098-f43ab1842744' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ac387c33c0fdc8e01bc8efa3452c3ae3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ac387c33c0fdc8e01bc8efa3452c3ae3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"}}},"level":"info","message":"received a callback","requestID":"ac387c33c0fdc8e01bc8efa3452c3ae3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"ac387c33c0fdc8e01bc8efa3452c3ae3","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"ac387c33c0fdc8e01bc8efa3452c3ae3"} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","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/b43926b9-9c1b-4c66-b098-f43ab1842744' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28434b2a0e3a340a3519491bd30b4cad","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28434b2a0e3a340a3519491bd30b4cad","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"}}},"level":"info","message":"received a callback","requestID":"28434b2a0e3a340a3519491bd30b4cad"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3d394390-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb43926b9-9c1b-4c66-b098-f43ab1842744","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aad4a93b-54d8-46e0-9c57-93af2b7f061d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.536094} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.445633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d394390-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744","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":"3d394390-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3d394390-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744 200 15ms","method":"GET","requestID":"3d394390-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"28434b2a0e3a340a3519491bd30b4cad","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"28434b2a0e3a340a3519491bd30b4cad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d3f0ff0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"536c8c6e-91b2-4472-aeaf-65a7ab300e3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.5727699} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.485434,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d3f0ff0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3d3f0ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d3f0ff0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling 200 12ms","method":"POST","requestID":"3d3f0ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d4132d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69c2fd1e-30ed-48dd-8aaa-bae90096c8a0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.5881755} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.361085,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d4132d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","rebac_allow":false,"scope_allow":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":"3d4132d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d4132d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling 200 14ms","method":"POST","requestID":"3d4132d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU","level":"info","message":"auth send jwt","requestID":"4723a6015a3f331cd4a85c21e1aac0b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4723a6015a3f331cd4a85c21e1aac0b1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","requestID":"4723a6015a3f331cd4a85c21e1aac0b1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.442788,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4723a6015a3f331cd4a85c21e1aac0b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541011,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4723a6015a3f331cd4a85c21e1aac0b1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","requestID":"4723a6015a3f331cd4a85c21e1aac0b1"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4723a6015a3f331cd4a85c21e1aac0b1"} experiment-1 | {"level":"info","message":"GET /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593 200 17ms","method":"GET","requestID":"4723a6015a3f331cd4a85c21e1aac0b1","responseTime":17,"status":200,"url":"/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU","level":"info","message":"auth send jwt","requestID":"b95ae036e09443b9825a20ececa1b0a4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b95ae036e09443b9825a20ececa1b0a4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","requestID":"b95ae036e09443b9825a20ececa1b0a4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.915663,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b95ae036e09443b9825a20ececa1b0a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541011,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b95ae036e09443b9825a20ececa1b0a4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Attempting to finish experiment","requestID":"b95ae036e09443b9825a20ececa1b0a4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.32303,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541011,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744","device":"e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c69fc8a8-49d6-46fd-b3d3-2fc738146763","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a9ffec0ecd21b1088b1afcd9a2f30239","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a9ffec0ecd21b1088b1afcd9a2f30239","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb43926b9-9c1b-4c66-b098-f43ab1842744': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb43926b9-9c1b-4c66-b098-f43ab1842744","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"c810ad53-8520-4c23-9da4-8a3f3362b231","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.688907} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f4e303f-f8c0-4496-980e-71c807bef426","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.689418} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f979659dac7823df757904422d2fc427","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"}}},"level":"info","message":"received a callback","requestID":"a9ffec0ecd21b1088b1afcd9a2f30239"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f979659dac7823df757904422d2fc427","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"}}},"level":"info","message":"received a callback","requestID":"f979659dac7823df757904422d2fc427"} device-1 | {"data":{"peerconnection":"b43926b9-9c1b-4c66-b098-f43ab1842744","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744 204 52ms","method":"DELETE","requestID":"3d4d67d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":52,"status":204,"url":"/peerconnections/b43926b9-9c1b-4c66-b098-f43ab1842744"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"},"level":"info","message":"Successfully finished experiment","requestID":"b95ae036e09443b9825a20ececa1b0a4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d590090-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5a9e268-4b8a-4bf3-9076-c57b8e9d149b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"161f2e2a-9f69-4402-8f47-02cae7a6ef17","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.7454386} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.780155,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d590090-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b","object_type":"device","rebac_allow":false,"scope_allow":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":"3d590090-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d590090-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa8e2998c-cf3b-4d29-ae8c-6350f3d16593': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa8e2998c-cf3b-4d29-ae8c-6350f3d16593","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"3ae3870b-2aa1-4dd3-8381-555498bddcfd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.7535238} device-1 | {"level":"info","message":"POST /devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/signaling 200 17ms","method":"POST","requestID":"3d590090-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b/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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8c51008-09ba-4b95-9bfc-ba2563ab95fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.7544346} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"b95ae036e09443b9825a20ececa1b0a4","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3d5c34e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc69fc8a8-49d6-46fd-b3d3-2fc738146763","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"020c885f-d19b-4ba9-abe7-652df6e1c745","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.7657323} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.248804,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d5c34e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763","object_type":"device","rebac_allow":false,"scope_allow":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":"3d5c34e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3d5c34e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling 200 15ms","method":"POST","requestID":"3d5c34e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/c69fc8a8-49d6-46fd-b3d3-2fc738146763/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593","requestID":"b95ae036e09443b9825a20ececa1b0a4"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b95ae036e09443b9825a20ececa1b0a4"} experiment-1 | {"level":"info","message":"DELETE /experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593 204 171ms","method":"DELETE","requestID":"b95ae036e09443b9825a20ececa1b0a4","responseTime":171,"status":204,"url":"/experiments/a8e2998c-cf3b-4d29-ae8c-6350f3d16593"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3267","request_time":"4.254","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"90a547dc69312e364935aebecc66c2c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"a9ffec0ecd21b1088b1afcd9a2f30239","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"a9ffec0ecd21b1088b1afcd9a2f30239"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"f979659dac7823df757904422d2fc427","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"f979659dac7823df757904422d2fc427"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU","level":"info","message":"auth send jwt","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.786","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c0342de5fa5595dd09b51d174c62e32b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.005302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541011,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","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/c69fc8a8-49d6-46fd-b3d3-2fc738146763' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a64ca36e-f03c-482f-8df5-1c00ec427b69","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.8480368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","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/e5a9e268-4b8a-4bf3-9076-c57b8e9d149b' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83eb7ee2-cfc0-427f-9982-80dc35927bb5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.85302} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1cf24304-9d8e-4d99-b887-559d6f28d47b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.862336} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7fee386-8a79-40cd-b20d-0fab8473b510","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.862375} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"868e2c4c-b80d-4719-9d50-b379395eee5a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.867238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"e20ccc5dbf3d48fbf05b1d6300b94b50","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU","level":"info","message":"auth send jwt","requestID":"fd62fc6cc7912a1699727669b9ddf47b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fd62fc6cc7912a1699727669b9ddf47b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710193,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fd62fc6cc7912a1699727669b9ddf47b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541011,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMX0.v-PsA7NsMdhv-beP1pdR7o_6jIHFK2O0ozCzwr9TCcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a67063d7-e667-4787-b955-601cdf4f7139","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.895039} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"721e3b7c-b322-47a9-b3a6-6a18836425a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.8996851} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f91de302-c543-4948-8bd6-b01fd88661b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.9105134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75b6df3d-a780-4160-aeb9-6abdfe3b35c6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.9106731} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"d5d20d5a-1d83-4afb-b090-8cef4a63f57f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541011.9148777} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fd62fc6cc7912a1699727669b9ddf47b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"fd62fc6cc7912a1699727669b9ddf47b","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd62fc6cc7912a1699727669b9ddf47b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMn0.sBHcsbk8WaCLrHMlqWig_IW5tjuO8hLpSKKFGbR6B6c","level":"info","message":"auth send jwt","requestID":"1ff01d9f7c070cde1b3041c030643cec"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1ff01d9f7c070cde1b3041c030643cec","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1ff01d9f7c070cde1b3041c030643cec"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.476162,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ff01d9f7c070cde1b3041c030643cec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541012,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMn0.sBHcsbk8WaCLrHMlqWig_IW5tjuO8hLpSKKFGbR6B6c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ff01d9f7c070cde1b3041c030643cec","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"f122c9ea-7527-41d1-b27b-50f410015db7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541012.4033086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ff01d9f7c070cde1b3041c030643cec","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d217790b-ad1f-4405-a716-468086ce2fd2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541012.4085088} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1ff01d9f7c070cde1b3041c030643cec","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"68d9beda-d916-4310-9b65-2db939ab20dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541012.419315} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ff01d9f7c070cde1b3041c030643cec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1ff01d9f7c070cde1b3041c030643cec"} gateway-1 | {"time_local":"10/Oct/2024:06:16:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/942f6f87-7472-4b4c-9e62-fd154712f497 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1ff01d9f7c070cde1b3041c030643cec"} device-1 | {"level":"info","message":"PATCH /devices/942f6f87-7472-4b4c-9e62-fd154712f497 200 29ms","method":"PATCH","requestID":"1ff01d9f7c070cde1b3041c030643cec","responseTime":29,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMn0.sBHcsbk8WaCLrHMlqWig_IW5tjuO8hLpSKKFGbR6B6c","level":"info","message":"auth send jwt","requestID":"05549830ac1b1eadb2ee4b2fc80e694c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05549830ac1b1eadb2ee4b2fc80e694c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"05549830ac1b1eadb2ee4b2fc80e694c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.427258,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"05549830ac1b1eadb2ee4b2fc80e694c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541012,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxMn0.sBHcsbk8WaCLrHMlqWig_IW5tjuO8hLpSKKFGbR6B6c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"05549830ac1b1eadb2ee4b2fc80e694c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"05549830ac1b1eadb2ee4b2fc80e694c"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/websocket 200 17ms","method":"POST","requestID":"05549830ac1b1eadb2ee4b2fc80e694c","responseTime":17,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"05549830ac1b1eadb2ee4b2fc80e694c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3281e264c8842605bdae89a9946bec2e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3281e264c8842605bdae89a9946bec2e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/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":"3281e264c8842605bdae89a9946bec2e"} device-1 | {"level":"info","message":"OPTIONS /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/websocket 200 1ms","method":"OPTIONS","requestID":"3281e264c8842605bdae89a9946bec2e","responseTime":1,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxM30.VvpzwnNzSGTWSa2iLh4aw-wy_JEXac0ExVU0Yi22HEE","level":"info","message":"auth send jwt","requestID":"c15d63b4a4e9c117095bd6916574a2c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c15d63b4a4e9c117095bd6916574a2c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c15d63b4a4e9c117095bd6916574a2c6"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230184,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c15d63b4a4e9c117095bd6916574a2c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541013,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxM30.VvpzwnNzSGTWSa2iLh4aw-wy_JEXac0ExVU0Yi22HEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c15d63b4a4e9c117095bd6916574a2c6","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c15d63b4a4e9c117095bd6916574a2c6"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/websocket 200 21ms","method":"POST","requestID":"c15d63b4a4e9c117095bd6916574a2c6","responseTime":21,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/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":"c15d63b4a4e9c117095bd6916574a2c6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b20c387919791d5400011246b0f89864","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b20c387919791d5400011246b0f89864","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b20c387919791d5400011246b0f89864"} device-1 | {"level":"info","message":"OPTIONS /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 1ms","method":"OPTIONS","requestID":"b20c387919791d5400011246b0f89864","responseTime":1,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"8ba9187f2abf85fd343b6e562904dd5b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8ba9187f2abf85fd343b6e562904dd5b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8ba9187f2abf85fd343b6e562904dd5b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283814,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8ba9187f2abf85fd343b6e562904dd5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8ba9187f2abf85fd343b6e562904dd5b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"df4600a7-772e-451d-a15d-c670f0f00be8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.0238879} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8ba9187f2abf85fd343b6e562904dd5b","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b745c97b-6607-49ae-8ab9-b6ef30d424cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.0317855} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8ba9187f2abf85fd343b6e562904dd5b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"fb6d4a84-abbc-4ac2-ae4e-00318457b528","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.0439243} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8ba9187f2abf85fd343b6e562904dd5b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8ba9187f2abf85fd343b6e562904dd5b"} device-1 | {"level":"info","message":"PATCH /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 39ms","method":"PATCH","requestID":"8ba9187f2abf85fd343b6e562904dd5b","responseTime":39,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8ba9187f2abf85fd343b6e562904dd5b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"d36b9f3fedc59362a2fe430580d6b800"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d36b9f3fedc59362a2fe430580d6b800","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d36b9f3fedc59362a2fe430580d6b800"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194525,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d36b9f3fedc59362a2fe430580d6b800","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d36b9f3fedc59362a2fe430580d6b800","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"420e9473-1246-46e9-bf33-816f8c6a2f6a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.073591} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d36b9f3fedc59362a2fe430580d6b800","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d36b9f3fedc59362a2fe430580d6b800"} device-1 | {"level":"info","message":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 18ms","method":"GET","requestID":"d36b9f3fedc59362a2fe430580d6b800","responseTime":18,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d36b9f3fedc59362a2fe430580d6b800"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"d7d4edfc0b55ed8517d71f3a5311f108"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d7d4edfc0b55ed8517d71f3a5311f108","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7d4edfc0b55ed8517d71f3a5311f108"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.11556,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d7d4edfc0b55ed8517d71f3a5311f108","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7d4edfc0b55ed8517d71f3a5311f108","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"cf898387-a7a1-464c-9714-4d1ddb7a2e8c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.098429} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d7d4edfc0b55ed8517d71f3a5311f108","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7d4edfc0b55ed8517d71f3a5311f108"} device-1 | {"level":"info","message":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? 200 18ms","method":"GET","requestID":"d7d4edfc0b55ed8517d71f3a5311f108","responseTime":18,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7d4edfc0b55ed8517d71f3a5311f108"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"a6992f177456602009e391b48cee8f27"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a6992f177456602009e391b48cee8f27","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a6992f177456602009e391b48cee8f27"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":3.239905,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a6992f177456602009e391b48cee8f27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a6992f177456602009e391b48cee8f27","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to run experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to book experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully booked experiment","requestID":"a6992f177456602009e391b48cee8f27"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.110362,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.352652,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"93e073b8-91c2-4779-9554-12762be8d429","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.1715744} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"9b741f53-8528-4e54-9e66-c4dc374b3be9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.177009} device-1 | {"level":"info","message":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 18ms","method":"GET","requestID":"3eca91f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? 200 21ms","method":"GET","requestID":"3ecae010-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Setting up experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully set up experiment","requestID":"a6992f177456602009e391b48cee8f27"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ed69fe0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully running experiment","requestID":"a6992f177456602009e391b48cee8f27"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.949864,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901969,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35524","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"8e0baf1c-4ade-4a13-88a2-6800a62746f6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.248547} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35524","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.059739,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"8617dccc-4255-4575-b652-1e2006d4b3ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2502856} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70e68e4b-aa4f-45df-bbf1-e4863876a858","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2507439} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? 200 18ms","method":"GET","requestID":"3ed651c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ed69fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"3ed69fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4278147c-e810-4b6d-b9a4-9e3dd4730621#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4278147c-e810-4b6d-b9a4-9e3dd4730621","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2481f1d1-0f5c-4497-bfb6-2eb984604011","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2591991} device-1 | {"level":"info","message":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 25ms","method":"GET","requestID":"3ed603a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc7d3500-261c-4446-a208-95cc23e36eb0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2596009} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ed69fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling 200 22ms","method":"POST","requestID":"3ed69fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a6992f177456602009e391b48cee8f27","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3eda4960-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3eda9780-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e48f7cf9-dd13-4790-bed3-16cc98b14d90","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2687247} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.524855,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3eda4960-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","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/4278147c-e810-4b6d-b9a4-9e3dd4730621","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a6992f177456602009e391b48cee8f27"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3eda4960-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f65bcc3-e1b1-49d2-9452-e7a8edf458f1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2700617} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.053106,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"a6992f177456602009e391b48cee8f27","responseTime":159,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3eda9780-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3eda9780-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3eda4960-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling 200 14ms","method":"POST","requestID":"3eda4960-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3eda9780-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"bba7c3596e70d744b8c9dcefb8116672"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling 200 14ms","method":"POST","requestID":"3eda9780-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bba7c3596e70d744b8c9dcefb8116672","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3edcba60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bba7c3596e70d744b8c9dcefb8116672"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.88633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97cb2f65-5ec0-493d-9ba6-6a47082852db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2835326} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bba7c3596e70d744b8c9dcefb8116672","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bba7c3596e70d744b8c9dcefb8116672","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.646906,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3edcba60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3edcba60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"7ba912d2-1696-4223-a5c7-907f692a663a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.287818} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3edcba60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling 200 10ms","method":"POST","requestID":"3edcba60-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bba7c3596e70d744b8c9dcefb8116672","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a6992f177456602009e391b48cee8f27"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bba7c3596e70d744b8c9dcefb8116672"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bba7c3596e70d744b8c9dcefb8116672"} device-1 | {"level":"info","message":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 13ms","method":"GET","requestID":"bba7c3596e70d744b8c9dcefb8116672","responseTime":13,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96087,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35510","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677065,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY","level":"info","message":"auth send jwt","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.862302104Z"}]},"request_id":"fc48deef-7e5e-4bcd-9e92-21ff05829f6d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.2989461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"65bcd53f-6edb-4fb0-9a78-41f76ad57caf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.3001652} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} device-1 | {"level":"info","message":"GET /devices/f8ee667f-a020-493e-82bc-e1d0d4620492? 200 12ms","method":"GET","requestID":"3ede8f20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.435417,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? 200 13ms","method":"GET","requestID":"3ededd40-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b282aaff7bf09c8b5f5f53a9a9966d14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Building connection plan","requestID":"a6992f177456602009e391b48cee8f27"} 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":"aad2172f-c85f-42d5-909f-c27580f8563f"},{"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":"e6a57f9a-3767-4d59-94c3-e68a3ef07948"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c8a6c1e6-52ee-469f-8561-2af198e30db2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a6992f177456602009e391b48cee8f27"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a6992f177456602009e391b48cee8f27"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:51.910480214Z"}]},"request_id":"2f9baf7a-d3f3-4bd6-ac7b-b36c2a2aa685","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.3084261} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.680019,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541014,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNH0.rcFQ2gIfvxo7_vl2_uBBBtWzjp9Zue_SGlvhXZqk0BY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14"} gateway-1 | {"time_local":"10/Oct/2024:06:16:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14"} device-1 | {"level":"info","message":"GET /devices/942f6f87-7472-4b4c-9e62-fd154712f497? 200 14ms","method":"GET","requestID":"b282aaff7bf09c8b5f5f53a9a9966d14","responseTime":14,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"9b230b38-aac7-46fd-97cf-0a8f9afe74b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.3194532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fdd4362-d229-4920-a689-a0a4a649d317","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.3196204} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe'","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe'","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} 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":"3ee12730-86cf-11ef-b00e-2fb111b9dda5","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":"3ee12730-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a6992f177456602009e391b48cee8f27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ee8ef60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eae2361d-e633-43bb-9400-773383c16f6c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.363921} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.786685,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ee8ef60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ee8ef60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ee8ef60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling 200 12ms","method":"POST","requestID":"3ee8ef60-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3eeb1240-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb4201d0-280a-4467-94b3-fc838a079ec0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541014.376527} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.519291,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3eeb1240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3eeb1240-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3eeb1240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling 200 8ms","method":"POST","requestID":"3eeb1240-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2250296709010543403 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:wurt\r\na=ice-pwd:35yxNpH9aqGaJGJi6S2GQusC\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A0:0E:07:DD:E1:1C:57:C5:26:2C:B4:C8:12:61:83:EC:47:E3:B6:5D:60:58:E5:95:20:01:7C:FD:E2:84:8B:0A\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1763633540 1 udp 2113937151 3e832055-6871-4f40-ab8c-7efa94dd0b45.local 55256 typ host generation 0 ufrag wurt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","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/da52031b-2ff3-4883-b599-f16741eb6fbe' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:4197795991 1 udp 1677729535 141.24.211.56 55256 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wurt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2b8ea2cac75ebc39795e19dc26c165d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f2b8ea2cac75ebc39795e19dc26c165d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"}}},"level":"info","message":"received a callback","requestID":"f2b8ea2cac75ebc39795e19dc26c165d"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"f2b8ea2cac75ebc39795e19dc26c165d","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2b8ea2cac75ebc39795e19dc26c165d"} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f8ee667f-a020-493e-82bc-e1d0d4620492","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/da52031b-2ff3-4883-b599-f16741eb6fbe' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2212df5ac24ca5d953321bf68cfe1c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a2212df5ac24ca5d953321bf68cfe1c1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"}}},"level":"info","message":"received a callback","requestID":"a2212df5ac24ca5d953321bf68cfe1c1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"402714b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda52031b-2ff3-4883-b599-f16741eb6fbe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46391f8b-b151-4192-88ba-540a0bca2152","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.448314} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.69672,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"402714b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe","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":"402714b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"402714b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe 200 9ms","method":"GET","requestID":"402714b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"a2212df5ac24ca5d953321bf68cfe1c1","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2212df5ac24ca5d953321bf68cfe1c1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"402bf6b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98110f73-c6b3-4d2e-aeae-df51681827f0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.4808836} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.84519,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"402bf6b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"402bf6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"402bf6b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling 200 11ms","method":"POST","requestID":"402bf6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"402df280-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b4cb356-64cc-47a0-a4b5-eb4f6c44529a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.4937932} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.646873,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"402df280-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"402df280-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"402df280-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling 200 12ms","method":"POST","requestID":"402df280-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw","level":"info","message":"auth send jwt","requestID":"f0bb9e7634f7a8771297860fc228b462"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f0bb9e7634f7a8771297860fc228b462","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","requestID":"f0bb9e7634f7a8771297860fc228b462"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.102883,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f0bb9e7634f7a8771297860fc228b462","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541016,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0bb9e7634f7a8771297860fc228b462","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","requestID":"f0bb9e7634f7a8771297860fc228b462"} experiment-1 | {"level":"info","message":"GET /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621 200 12ms","method":"GET","requestID":"f0bb9e7634f7a8771297860fc228b462","responseTime":12,"status":200,"url":"/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0bb9e7634f7a8771297860fc228b462"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw","level":"info","message":"auth send jwt","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.493063,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b2a30fb3e4a566bce8c1cac0db0329f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541016,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Attempting to finish experiment","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.71009,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541016,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe","device":"f8ee667f-a020-493e-82bc-e1d0d4620492","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"942f6f87-7472-4b4c-9e62-fd154712f497","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da52031b-2ff3-4883-b599-f16741eb6fbe","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda52031b-2ff3-4883-b599-f16741eb6fbe': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda52031b-2ff3-4883-b599-f16741eb6fbe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"eb602a65-0ebf-4eb2-b1a2-872dfa91d1ac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.5969179} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec2f0ed6-6d2b-48b7-a2f0-4c151c67dc35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.597101} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ac7c8daeb68876c32a3ec2239c1427a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3ac7c8daeb68876c32a3ec2239c1427a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"474e7af92dc2c8ddbfe8f0c0111e5896","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"474e7af92dc2c8ddbfe8f0c0111e5896","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"}}},"level":"info","message":"received a callback","requestID":"3ac7c8daeb68876c32a3ec2239c1427a"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"}}},"level":"info","message":"received a callback","requestID":"474e7af92dc2c8ddbfe8f0c0111e5896"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe 204 47ms","method":"DELETE","requestID":"403b11e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":47,"status":204,"url":"/peerconnections/da52031b-2ff3-4883-b599-f16741eb6fbe"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"},"level":"info","message":"Successfully finished experiment","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4045e750-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8ee667f-a020-493e-82bc-e1d0d4620492","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3647c87-1ce5-432d-80f9-915c76e910e8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.6533253} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.762839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4045e750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8ee667f-a020-493e-82bc-e1d0d4620492","object_type":"device","rebac_allow":false,"scope_allow":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":"4045e750-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4045e750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling 200 15ms","method":"POST","requestID":"4045e750-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/f8ee667f-a020-493e-82bc-e1d0d4620492/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4278147c-e810-4b6d-b9a4-9e3dd4730621': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4278147c-e810-4b6d-b9a4-9e3dd4730621","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a21d3018-3d36-4c59-a174-44a9f38d262b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.6608307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce423804-bdf6-4fa8-b168-904d4d13104c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.6610134} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4048a670-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F942f6f87-7472-4b4c-9e62-fd154712f497","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41b230e7-dfef-46df-923b-6e9c25bb6425","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.6693044} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.708081,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4048a670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/942f6f87-7472-4b4c-9e62-fd154712f497","object_type":"device","rebac_allow":false,"scope_allow":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":"4048a670-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4048a670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling 200 13ms","method":"POST","requestID":"4048a670-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/942f6f87-7472-4b4c-9e62-fd154712f497/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3"} experiment-1 | {"level":"info","message":"DELETE /experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621 204 169ms","method":"DELETE","requestID":"b2a30fb3e4a566bce8c1cac0db0329f3","responseTime":169,"status":204,"url":"/experiments/4278147c-e810-4b6d-b9a4-9e3dd4730621"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3269","request_time":"4.284","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"07e555e165cfec3de1f732f9d4fe7014"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"3ac7c8daeb68876c32a3ec2239c1427a","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ac7c8daeb68876c32a3ec2239c1427a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"474e7af92dc2c8ddbfe8f0c0111e5896","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:16: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"474e7af92dc2c8ddbfe8f0c0111e5896"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw","level":"info","message":"auth send jwt","requestID":"891c4f32c259007f1471a9655f5cdfc3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"891c4f32c259007f1471a9655f5cdfc3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"891c4f32c259007f1471a9655f5cdfc3"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.780","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8add36c2254c9f5769280b3e129cf9ff"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.933037,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"891c4f32c259007f1471a9655f5cdfc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541016,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","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/942f6f87-7472-4b4c-9e62-fd154712f497' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"72ec05a9-6c8a-4d39-9764-a96cb98e428c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.7625513} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","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/f8ee667f-a020-493e-82bc-e1d0d4620492' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dc88c9b-83c6-40c9-b380-a0e5739707f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.7677062} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c28dca53-7fae-49cf-901d-3fe4360d405d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.7826269} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"173fe53e-1bb4-413b-8398-98b8c9aca770","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.7827234} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"eed1f582-f854-40fb-9ae5-40e5e2329d0e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.7889738} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"891c4f32c259007f1471a9655f5cdfc3"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"891c4f32c259007f1471a9655f5cdfc3","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"891c4f32c259007f1471a9655f5cdfc3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw","level":"info","message":"auth send jwt","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.729054,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541016,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxNn0.Dg6o59OJWDzvMxka38Wt1tn-na0kZ6iiTyfai7sISaw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0f775d0a-5c58-46fb-8c43-618f302d638f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.8131285} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0aa56c64-e31f-4a4b-9759-503d3a2fb4a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.8179233} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a9ed5921-63ef-4cba-85e1-0259ebbb56cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.828862} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f9a89bc-e481-4610-9d91-c910976b0737","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.8290358} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"4b64c4be-bcb8-4c67-954a-bd4568da0331","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541016.835156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82"} gateway-1 | {"time_local":"10/Oct/2024:06:16:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"d3eaf2b0f8f6b6a1807f0d561f740a82","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxN30.x9BeQK5xVGg208Y56mvH4UPu7K5cSZ76_-wLsZ5Wre0","level":"info","message":"auth send jwt","requestID":"bff203be60a2332d542812c53b5f0f21"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bff203be60a2332d542812c53b5f0f21","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bff203be60a2332d542812c53b5f0f21"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.862523,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bff203be60a2332d542812c53b5f0f21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541017,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxN30.x9BeQK5xVGg208Y56mvH4UPu7K5cSZ76_-wLsZ5Wre0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bff203be60a2332d542812c53b5f0f21","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"a6b01bcf-82be-40c5-8d81-26e4c5eeb42a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541017.3147652} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bff203be60a2332d542812c53b5f0f21","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"820b9811-ed47-475a-9ad4-68edaaf615af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541017.321555} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bff203be60a2332d542812c53b5f0f21","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"a31a1b21-dfa8-4a8f-b7c5-4c9d3a4bfb60","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541017.334611} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bff203be60a2332d542812c53b5f0f21","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bff203be60a2332d542812c53b5f0f21"} device-1 | {"level":"info","message":"PATCH /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9 200 36ms","method":"PATCH","requestID":"bff203be60a2332d542812c53b5f0f21","responseTime":36,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"} gateway-1 | {"time_local":"10/Oct/2024:06:16:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"bff203be60a2332d542812c53b5f0f21"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxN30.x9BeQK5xVGg208Y56mvH4UPu7K5cSZ76_-wLsZ5Wre0","level":"info","message":"auth send jwt","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122238,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541017,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxN30.x9BeQK5xVGg208Y56mvH4UPu7K5cSZ76_-wLsZ5Wre0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/websocket 200 20ms","method":"POST","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0","responseTime":20,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:16:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"6f01be2cdf8fcd1fdf35006cbc3d7fc0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c35230f1c9d4ed150d518cc1f0254091","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c35230f1c9d4ed150d518cc1f0254091","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:16:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/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":"c35230f1c9d4ed150d518cc1f0254091"} device-1 | {"level":"info","message":"OPTIONS /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/websocket 200 1ms","method":"OPTIONS","requestID":"c35230f1c9d4ed150d518cc1f0254091","responseTime":1,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic","level":"info","message":"auth send jwt","requestID":"0da8c191f174765ca42eb8f489caf055"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0da8c191f174765ca42eb8f489caf055","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0da8c191f174765ca42eb8f489caf055"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30076,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0da8c191f174765ca42eb8f489caf055","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541018,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0da8c191f174765ca42eb8f489caf055","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0da8c191f174765ca42eb8f489caf055"} gateway-1 | {"time_local":"10/Oct/2024:06:16:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/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":"0da8c191f174765ca42eb8f489caf055"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/websocket 200 21ms","method":"POST","requestID":"0da8c191f174765ca42eb8f489caf055","responseTime":21,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"282fc98e5857749525f171ce1741fc05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"282fc98e5857749525f171ce1741fc05","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 1ms","method":"OPTIONS","requestID":"282fc98e5857749525f171ce1741fc05","responseTime":1,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"282fc98e5857749525f171ce1741fc05"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic","level":"info","message":"auth send jwt","requestID":"b3651aaa6dafcb1e55b6477745a57f88"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b3651aaa6dafcb1e55b6477745a57f88","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b3651aaa6dafcb1e55b6477745a57f88"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.09101,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b3651aaa6dafcb1e55b6477745a57f88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541018,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3651aaa6dafcb1e55b6477745a57f88","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"4ed9e4a6-93bb-4e79-b9f2-dbb08ca9ab58","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541018.9474602} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3651aaa6dafcb1e55b6477745a57f88","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f38e58f-5c34-409e-be6e-b7f0075f65fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541018.9552715} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b3651aaa6dafcb1e55b6477745a57f88","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"ff11fd20-f8fa-472a-b1ca-342059d91e21","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541018.969469} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3651aaa6dafcb1e55b6477745a57f88","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b3651aaa6dafcb1e55b6477745a57f88"} gateway-1 | {"time_local":"10/Oct/2024:06:16:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b3651aaa6dafcb1e55b6477745a57f88"} device-1 | {"level":"info","message":"PATCH /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 38ms","method":"PATCH","requestID":"b3651aaa6dafcb1e55b6477745a57f88","responseTime":38,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic","level":"info","message":"auth send jwt","requestID":"fa346e885580ede469d231523b673e8a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fa346e885580ede469d231523b673e8a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa346e885580ede469d231523b673e8a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307982,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fa346e885580ede469d231523b673e8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541018,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOH0.wiMn4YdM5vPp_DKahyJy5RSu81vjzvZPDkLhFUNzJic"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fa346e885580ede469d231523b673e8a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"50941c84-5ecd-455b-9da5-2a3bbe03ed76","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.0010035} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa346e885580ede469d231523b673e8a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa346e885580ede469d231523b673e8a"} device-1 | {"level":"info","message":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? 200 18ms","method":"GET","requestID":"fa346e885580ede469d231523b673e8a","responseTime":18,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa346e885580ede469d231523b673e8a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M","level":"info","message":"auth send jwt","requestID":"ced50d980c9a1e617e1e498f1e3e7b00"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ced50d980c9a1e617e1e498f1e3e7b00","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ced50d980c9a1e617e1e498f1e3e7b00"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176398,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ced50d980c9a1e617e1e498f1e3e7b00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ced50d980c9a1e617e1e498f1e3e7b00","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"8962a193-a98b-4726-a021-a3712b95db56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.025133} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ced50d980c9a1e617e1e498f1e3e7b00","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ced50d980c9a1e617e1e498f1e3e7b00"} device-1 | {"level":"info","message":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 15ms","method":"GET","requestID":"ced50d980c9a1e617e1e498f1e3e7b00","responseTime":15,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} gateway-1 | {"time_local":"10/Oct/2024:06:16:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ced50d980c9a1e617e1e498f1e3e7b00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M","level":"info","message":"auth send jwt","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.73877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to run experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to book experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully booked experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292622,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.003303,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"ad5c70b5-1b1c-4133-8215-1a28138dd249","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.0930796} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"0303afeb-e76a-478f-95c7-3e89f974f565","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.0992908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? 200 23ms","method":"GET","requestID":"41b97480-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 25ms","method":"GET","requestID":"41b9e9b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Setting up experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully set up experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.647466,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41c6baf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully running experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349429,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c2f1ac9-e177-43db-999b-577e4b80df7c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1732616} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"a9421c8b-b6ae-441c-9024-8a6ce7b40d99","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1760771} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.388054,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41c6baf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","rebac_allow":false,"scope_allow":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":"41c6baf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"508f8614-1db6-41a7-95f7-7b09d1fcebfa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1781173} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 22ms","method":"GET","requestID":"41c645c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41c6baf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling 200 19ms","method":"POST","requestID":"41c6baf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? 200 25ms","method":"GET","requestID":"41c5f7a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41ca1650-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41ca3d60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff38ec93f-b3bb-4a64-a38a-17fc65892fc5#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff38ec93f-b3bb-4a64-a38a-17fc65892fc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"dbc7d188-2b7b-4d23-81c6-2b2433b5278d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1916783} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5aaf3e26-0d3d-4cdf-95c1-0a215665c349","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1918297} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cb67567-c0f9-4876-b497-3607c5a0deb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.1957958} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82db4a74-f449-40a4-9401-d727d04c93e4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.196435} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.645162,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.357206,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41ca1650-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"41ca1650-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41ca3d60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"41ca3d60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41ca1650-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling 200 13ms","method":"POST","requestID":"41ca1650-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41ca3d60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling 200 13ms","method":"POST","requestID":"41ca3d60-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling"} gateway-1 | {"time_local":"10/Oct/2024:06:16:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41ccae60-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M","level":"info","message":"auth send jwt","requestID":"ee174d72a9e6a6c5605b62942eb90e96"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ee174d72a9e6a6c5605b62942eb90e96","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee174d72a9e6a6c5605b62942eb90e96"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62aff913-1cfa-4d9a-9d8c-2326ce1476e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2108316} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342373,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41ccae60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41ccae60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.874384,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ee174d72a9e6a6c5605b62942eb90e96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee174d72a9e6a6c5605b62942eb90e96","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41ccae60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling 200 9ms","method":"POST","requestID":"41ccae60-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"88038c99-6bae-46dc-9a4f-b75c408f3192","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2166915} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee174d72a9e6a6c5605b62942eb90e96","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee174d72a9e6a6c5605b62942eb90e96"} gateway-1 | {"time_local":"10/Oct/2024:06:16:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee174d72a9e6a6c5605b62942eb90e96"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} device-1 | {"level":"info","message":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? 200 13ms","method":"GET","requestID":"ee174d72a9e6a6c5605b62942eb90e96","responseTime":13,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69349,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35528","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829725,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M","level":"info","message":"auth send jwt","requestID":"d075f4d2bf5d4ac55267186ba40341a2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d075f4d2bf5d4ac55267186ba40341a2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d075f4d2bf5d4ac55267186ba40341a2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.782603771Z"}]},"request_id":"cde853dc-c571-462f-86b5-4860fd1b5a4b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2272553} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"4738840e-3e25-414e-80d2-40553a2ce34b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2290945} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929274,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d075f4d2bf5d4ac55267186ba40341a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d075f4d2bf5d4ac55267186ba40341a2","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9? 200 19ms","method":"GET","requestID":"41ce5c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 19ms","method":"GET","requestID":"41ce8320-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:16:56.828830018Z"}]},"request_id":"7ea200ca-16f4-493a-82e2-a25e431ba3ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2374787} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Building connection plan","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} 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":"e1503fa5-500e-4236-ba97-e5ef5839fe86"},{"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":"db41c4fb-edae-4353-9be7-9721a10bb57b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f1b60923-27c8-4205-be53-50e1196d7406"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d075f4d2bf5d4ac55267186ba40341a2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d075f4d2bf5d4ac55267186ba40341a2"} device-1 | {"level":"info","message":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? 200 16ms","method":"GET","requestID":"d075f4d2bf5d4ac55267186ba40341a2","responseTime":16,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} gateway-1 | {"time_local":"10/Oct/2024:06:16:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d075f4d2bf5d4ac55267186ba40341a2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.719043,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541019,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAxOX0.o7rnn04AzmMBJAor_fgYBydyUaEm_8wNSTxAJRTT2-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a26518de-aaa5-4ca8-8f45-6086c77f8b81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2534943} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"255acde3-b7aa-46d4-a125-3c591437ae61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2536733} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9'","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9'","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} 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":"41d1de80-86cf-11ef-b00e-2fb111b9dda5","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":"41d1de80-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b4f0e8f9497d24a42a97dc5b3ab51c13"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41da1be0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a3b5dde-0926-41d4-b8e8-dddfeb536511","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.2994127} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.914317,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41da1be0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41da1be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41da1be0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling 200 9ms","method":"POST","requestID":"41da1be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"41dbc990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53d04e4c-bba4-4608-86d4-170c4f4bc514","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541019.3095665} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.480028,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:16:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"41dbc990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41dbc990-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 3231722504053169384 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:PG78\r\na=ice-pwd:1I+fjvRwEJ4gG411bspbyovJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EC:5E:54:FE:F3:AD:9B:10:62:2F:7D:9D:D4:18:C2:E4:29:E5:AB:6D:BF:82:9E:47:05:04:D3:69:CA:FF:0B:5B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"41dbc990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling 200 10ms","method":"POST","requestID":"41dbc990-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling"} device-1 | {"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f89fb31343a23eb11eef008f1cff884","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8f89fb31343a23eb11eef008f1cff884","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"}}},"level":"info","message":"received a callback","requestID":"8f89fb31343a23eb11eef008f1cff884"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"8f89fb31343a23eb11eef008f1cff884"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"8f89fb31343a23eb11eef008f1cff884","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:3974791629 1 udp 2113937151 e37ce9e6-d608-4103-b0c8-4041ce6ae366.local 50753 typ host generation 0 ufrag PG78 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1757932466 1 udp 1677729535 141.24.211.56 50753 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PG78 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1003115577 1 udp 33562623 141.24.210.113 53846 typ relay raddr 141.24.211.56 rport 50753 generation 0 ufrag PG78 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","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/3c91ab37-4660-4f8d-8155-f9786fe4f209'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209'"} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb6e96929a2578846a06c35c35d30e07","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb6e96929a2578846a06c35c35d30e07","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"}}},"level":"info","message":"received a callback","requestID":"fb6e96929a2578846a06c35c35d30e07"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"431c5fe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F74892508-9331-4cc4-b110-28b85bbce7d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a35d78d3-9abc-4250-b7b0-525b4a310877","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.4127095} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.25353,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"431c5fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9","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":"431c5fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"431c5fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9 200 11ms","method":"GET","requestID":"431c5fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"fb6e96929a2578846a06c35c35d30e07","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"fb6e96929a2578846a06c35c35d30e07"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4321b710-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e895e2b1-690a-4239-a9e0-429c2a4205ed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.4478824} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.6305,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4321b710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4321b710-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4321b710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling 200 13ms","method":"POST","requestID":"4321b710-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"43242810-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"267f2956-ccaa-46ff-9cb3-708a3c614cb2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.4637504} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.860109,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"43242810-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"43242810-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"43242810-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling 200 13ms","method":"POST","requestID":"43242810-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8","level":"info","message":"auth send jwt","requestID":"3d69a61dbc36420a697bdbbe7f8265c0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d69a61dbc36420a697bdbbe7f8265c0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","requestID":"3d69a61dbc36420a697bdbbe7f8265c0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.148232,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3d69a61dbc36420a697bdbbe7f8265c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541021,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d69a61dbc36420a697bdbbe7f8265c0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","requestID":"3d69a61dbc36420a697bdbbe7f8265c0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d69a61dbc36420a697bdbbe7f8265c0"} experiment-1 | {"level":"info","message":"GET /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5 200 15ms","method":"GET","requestID":"3d69a61dbc36420a697bdbbe7f8265c0","responseTime":15,"status":200,"url":"/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8","level":"info","message":"auth send jwt","requestID":"b51a8c67655b2ef80d789eaea50baec0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b51a8c67655b2ef80d789eaea50baec0","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","requestID":"b51a8c67655b2ef80d789eaea50baec0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.282636,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b51a8c67655b2ef80d789eaea50baec0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541021,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b51a8c67655b2ef80d789eaea50baec0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Attempting to finish experiment","requestID":"b51a8c67655b2ef80d789eaea50baec0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.143017,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541021,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9","device":"3c91ab37-4660-4f8d-8155-f9786fe4f209","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"74892508-9331-4cc4-b110-28b85bbce7d9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F74892508-9331-4cc4-b110-28b85bbce7d9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F74892508-9331-4cc4-b110-28b85bbce7d9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"de5f709d-ff3d-43bc-8d22-98961aaa592b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.5647376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6835f44a-a5e9-4d75-ab8e-c46b96c8b3d2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.5651326} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d6b59ae1a21746ef10017ce8f8b71aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9d6b59ae1a21746ef10017ce8f8b71aa","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ae70412b94c3fc75e998c6975a454a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9ae70412b94c3fc75e998c6975a454a2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"}}},"level":"info","message":"received a callback","requestID":"9d6b59ae1a21746ef10017ce8f8b71aa"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"}}},"level":"info","message":"received a callback","requestID":"9ae70412b94c3fc75e998c6975a454a2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9 204 49ms","method":"DELETE","requestID":"4330d240-86cf-11ef-b00e-2fb111b9dda5","responseTime":49,"status":204,"url":"/peerconnections/74892508-9331-4cc4-b110-28b85bbce7d9"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"},"level":"info","message":"Successfully finished experiment","requestID":"b51a8c67655b2ef80d789eaea50baec0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"433c1ce0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2dc1246-4d65-4bf1-96b4-799925369326","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.620318} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.218327,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"433c1ce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"433c1ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"433c1ce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling 200 11ms","method":"POST","requestID":"433c1ce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff38ec93f-b3bb-4a64-a38a-17fc65892fc5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff38ec93f-b3bb-4a64-a38a-17fc65892fc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"977d312d-be76-4ec6-8151-96579362165c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.6273532} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"433e66d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"439fe124-f433-4536-a7c9-f9f84e3a5c0a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.6279585} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"b51a8c67655b2ef80d789eaea50baec0","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c91ab37-4660-4f8d-8155-f9786fe4f209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c57fc735-5d3c-47e2-9a9f-e6fb1726b314","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.6376832} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.142733,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"433e66d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209","object_type":"device","rebac_allow":false,"scope_allow":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":"433e66d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"433e66d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling 200 15ms","method":"POST","requestID":"433e66d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/3c91ab37-4660-4f8d-8155-f9786fe4f209/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5","requestID":"b51a8c67655b2ef80d789eaea50baec0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5 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":"b51a8c67655b2ef80d789eaea50baec0"} experiment-1 | {"level":"info","message":"DELETE /experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5 204 173ms","method":"DELETE","requestID":"b51a8c67655b2ef80d789eaea50baec0","responseTime":173,"status":204,"url":"/experiments/f38ec93f-b3bb-4a64-a38a-17fc65892fc5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3664","request_time":"4.331","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f493e30bc2b4f916fbc0bc365d2b953d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"9d6b59ae1a21746ef10017ce8f8b71aa","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d6b59ae1a21746ef10017ce8f8b71aa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"9ae70412b94c3fc75e998c6975a454a2","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ae70412b94c3fc75e998c6975a454a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8","level":"info","message":"auth send jwt","requestID":"533addc11bf30be475a7f75e31de6b11"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"533addc11bf30be475a7f75e31de6b11","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"533addc11bf30be475a7f75e31de6b11"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3125","request_time":"2.817","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"99fc101c452d6b0dd5b7c30e354239b5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.997423,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"533addc11bf30be475a7f75e31de6b11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541021,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","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/7d64fff9-56c8-4c0c-8f14-a84a1709b3c9' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"abeb107e-8d09-4ea6-9bd5-e219da296760","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7251747} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","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/3c91ab37-4660-4f8d-8155-f9786fe4f209' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6610c12-7d6c-44ba-9f9c-8459e24ccd51","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7298706} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"746e6e75-4501-467e-b7a9-43a5054cc103","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7445354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc20d80e-07be-4a6c-9cb7-37a62b5c3df5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.744663} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"eea6b31f-03bc-4ec9-b744-6db5911e108a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7489123} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"533addc11bf30be475a7f75e31de6b11"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"533addc11bf30be475a7f75e31de6b11"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"533addc11bf30be475a7f75e31de6b11","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8","level":"info","message":"auth send jwt","requestID":"48592c277f23f404dcfac7bc16fd5c00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"48592c277f23f404dcfac7bc16fd5c00"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.765634,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48592c277f23f404dcfac7bc16fd5c00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541021,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMX0.Kt0vekblNBGGCrO4HLgDJcfWtbJy8cgPzK1H_XtqfT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"41900899-d63a-497c-9a55-e6767fcdef00","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7725554} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3cee4b8-6be5-414b-be02-33aff9b30a73","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7772007} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f2225493-698c-47fe-8444-b6e3cc7cec8f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7865634} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c20b120-9b69-4132-a163-0a697082ba20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7870696} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"be1a47ef-3628-4b50-8e5f-1c49f045a6d9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541021.7914097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48592c277f23f404dcfac7bc16fd5c00"} gateway-1 | {"time_local":"10/Oct/2024:06:17:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48592c277f23f404dcfac7bc16fd5c00"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"48592c277f23f404dcfac7bc16fd5c00","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMn0.QzlPj6zKQk3Dm0RmD-4TtK91RFHiws_gOtMDGGJYuxU","level":"info","message":"auth send jwt","requestID":"9aee5b6d5477c50a9118ecda5a9c742b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9aee5b6d5477c50a9118ecda5a9c742b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.431305,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9aee5b6d5477c50a9118ecda5a9c742b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541022,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMn0.QzlPj6zKQk3Dm0RmD-4TtK91RFHiws_gOtMDGGJYuxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"8ca51978-8bf0-412d-a461-4902d242d7b7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541022.2789845} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84930b95-cf86-4456-8697-999c2d29f97d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541022.2839973} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"5757d0e0-166c-49f0-b20f-0df92b6c977d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541022.297921} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9aee5b6d5477c50a9118ecda5a9c742b"} device-1 | {"level":"info","message":"PATCH /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6 200 39ms","method":"PATCH","requestID":"9aee5b6d5477c50a9118ecda5a9c742b","responseTime":39,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"} gateway-1 | {"time_local":"10/Oct/2024:06:17:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9aee5b6d5477c50a9118ecda5a9c742b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMn0.QzlPj6zKQk3Dm0RmD-4TtK91RFHiws_gOtMDGGJYuxU","level":"info","message":"auth send jwt","requestID":"ad037ad296074a0b61ca10574124fda9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ad037ad296074a0b61ca10574124fda9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ad037ad296074a0b61ca10574124fda9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76094,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ad037ad296074a0b61ca10574124fda9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541022,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyMn0.QzlPj6zKQk3Dm0RmD-4TtK91RFHiws_gOtMDGGJYuxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad037ad296074a0b61ca10574124fda9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ad037ad296074a0b61ca10574124fda9"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/websocket 200 17ms","method":"POST","requestID":"ad037ad296074a0b61ca10574124fda9","responseTime":17,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ad037ad296074a0b61ca10574124fda9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ee23af2d450aae9f3d3ee087fb53b48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0ee23af2d450aae9f3d3ee087fb53b48","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/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":"0ee23af2d450aae9f3d3ee087fb53b48"} device-1 | {"level":"info","message":"OPTIONS /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/websocket 200 1ms","method":"OPTIONS","requestID":"0ee23af2d450aae9f3d3ee087fb53b48","responseTime":1,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc","level":"info","message":"auth send jwt","requestID":"9e5f694877f8e1636d2703feddbbcc60"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9e5f694877f8e1636d2703feddbbcc60","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9e5f694877f8e1636d2703feddbbcc60"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251295,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9e5f694877f8e1636d2703feddbbcc60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e5f694877f8e1636d2703feddbbcc60","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9e5f694877f8e1636d2703feddbbcc60"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/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":"9e5f694877f8e1636d2703feddbbcc60"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/websocket 200 20ms","method":"POST","requestID":"9e5f694877f8e1636d2703feddbbcc60","responseTime":20,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af7c4d12419cd61830531e47f69fffeb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"af7c4d12419cd61830531e47f69fffeb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af7c4d12419cd61830531e47f69fffeb"} device-1 | {"level":"info","message":"OPTIONS /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 1ms","method":"OPTIONS","requestID":"af7c4d12419cd61830531e47f69fffeb","responseTime":1,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc","level":"info","message":"auth send jwt","requestID":"8a03ffadf5ccc0c107801eb62962a679"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8a03ffadf5ccc0c107801eb62962a679","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8a03ffadf5ccc0c107801eb62962a679"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178095,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8a03ffadf5ccc0c107801eb62962a679","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a03ffadf5ccc0c107801eb62962a679","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"456d0895-107a-4280-aaca-8d9bfa635fa9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541023.8991065} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a03ffadf5ccc0c107801eb62962a679","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"efb78a0d-066b-4648-9238-2feeb29383ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541023.9068122} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8a03ffadf5ccc0c107801eb62962a679","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"0068a8a7-163e-4c7e-8686-7f5c67e39bfa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541023.9191134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a03ffadf5ccc0c107801eb62962a679","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8a03ffadf5ccc0c107801eb62962a679"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8a03ffadf5ccc0c107801eb62962a679"} device-1 | {"level":"info","message":"PATCH /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 37ms","method":"PATCH","requestID":"8a03ffadf5ccc0c107801eb62962a679","responseTime":37,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc","level":"info","message":"auth send jwt","requestID":"9616f9ed2e2a37e6a09792a01ec41100"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9616f9ed2e2a37e6a09792a01ec41100"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9616f9ed2e2a37e6a09792a01ec41100","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177914,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9616f9ed2e2a37e6a09792a01ec41100","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9616f9ed2e2a37e6a09792a01ec41100","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"26fb4658-32c6-46b3-aa4e-afbc31410c84","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541023.9508843} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9616f9ed2e2a37e6a09792a01ec41100","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9616f9ed2e2a37e6a09792a01ec41100"} device-1 | {"level":"info","message":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? 200 19ms","method":"GET","requestID":"9616f9ed2e2a37e6a09792a01ec41100","responseTime":19,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9616f9ed2e2a37e6a09792a01ec41100"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc","level":"info","message":"auth send jwt","requestID":"fee6d8fb640f481aad6fb73d920b8a2d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fee6d8fb640f481aad6fb73d920b8a2d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fee6d8fb640f481aad6fb73d920b8a2d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289597,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fee6d8fb640f481aad6fb73d920b8a2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fee6d8fb640f481aad6fb73d920b8a2d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"0dbd914b-5c35-4ab7-a012-f56bec52c23c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541023.9760747} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fee6d8fb640f481aad6fb73d920b8a2d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fee6d8fb640f481aad6fb73d920b8a2d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fee6d8fb640f481aad6fb73d920b8a2d"} device-1 | {"level":"info","message":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 15ms","method":"GET","requestID":"fee6d8fb640f481aad6fb73d920b8a2d","responseTime":15,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc","level":"info","message":"auth send jwt","requestID":"df91f35e6c3998098434f21764a0ba66"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"df91f35e6c3998098434f21764a0ba66","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"df91f35e6c3998098434f21764a0ba66"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.222171,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"df91f35e6c3998098434f21764a0ba66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df91f35e6c3998098434f21764a0ba66","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to run experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to book experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully booked experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192629,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.016877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"972049da-e5b6-4d72-a7f5-cc07e2815a1f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.041536} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"69e15fdc-3611-4b85-a22d-b0cdb4c5a001","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.0459948} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? 200 17ms","method":"GET","requestID":"44acc3e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 20ms","method":"GET","requestID":"44ad1200-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Setting up experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully set up experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44b7e770-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully running experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736066,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.018464,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"2558bc20-7f0a-486d-a066-d25828c976da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1165555} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02e1b605-0fac-403d-848c-f95969ab8ccf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1170452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"b2fc439d-30f2-4b75-bea4-4e3ed8627ee0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.118029} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.88105,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44b7e770-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"44b7e770-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? 200 25ms","method":"GET","requestID":"44b72420-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44b7e770-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling 200 21ms","method":"POST","requestID":"44b7e770-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 24ms","method":"GET","requestID":"44b79950-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed1640c6-87a0-4f36-b0e9-ffc4a837f25d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed1640c6-87a0-4f36-b0e9-ffc4a837f25d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e3e5c0ff-e80b-4e7f-b258-1aea379aae9a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.125681} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b21b3c7b-36ff-4f77-8053-d23b3b1d4ae6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.125951} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44bb69e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"df91f35e6c3998098434f21764a0ba66","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44bbb800-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e4cc90a-687e-4367-a712-b2fecbe7479b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.13186} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.895324,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44bb69e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"44bb69e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cf89e32-7a5b-43c0-9575-46870c3e0d94","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1334217} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.889712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44bbb800-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44bbb800-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"df91f35e6c3998098434f21764a0ba66"} gateway-1 | {"time_local":"10/Oct/2024:06:17:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"df91f35e6c3998098434f21764a0ba66","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44bb69e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling 200 12ms","method":"POST","requestID":"44bb69e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44bbb800-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling 200 11ms","method":"POST","requestID":"44bbb800-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNH0.8ZGXfQ-P3Fl8h3MmXMccOWmJZP-DjX4PLHbccbn4pfY","level":"info","message":"auth send jwt","requestID":"306bd9da625dea6339d5eed6a6623ce1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44bdb3d0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"306bd9da625dea6339d5eed6a6623ce1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"306bd9da625dea6339d5eed6a6623ce1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff55da23-7016-4e8a-8eb8-95ebca0dce54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.146486} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.40693,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885932,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44bdb3d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44bdb3d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"306bd9da625dea6339d5eed6a6623ce1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541024,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNH0.8ZGXfQ-P3Fl8h3MmXMccOWmJZP-DjX4PLHbccbn4pfY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"306bd9da625dea6339d5eed6a6623ce1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44bdb3d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling 200 11ms","method":"POST","requestID":"44bdb3d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"5d11795e-2973-4f9e-a814-518edb6cba11","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1528537} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"306bd9da625dea6339d5eed6a6623ce1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"306bd9da625dea6339d5eed6a6623ce1"} gateway-1 | {"time_local":"10/Oct/2024:06:17:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"306bd9da625dea6339d5eed6a6623ce1"} device-1 | {"level":"info","message":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? 200 15ms","method":"GET","requestID":"306bd9da625dea6339d5eed6a6623ce1","responseTime":15,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788655,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755205,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNH0.8ZGXfQ-P3Fl8h3MmXMccOWmJZP-DjX4PLHbccbn4pfY","level":"info","message":"auth send jwt","requestID":"19b424ca3be2c49209ce7e566953077e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19b424ca3be2c49209ce7e566953077e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19b424ca3be2c49209ce7e566953077e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.744497817Z"}]},"request_id":"568ddde4-5352-492c-885c-01cc2a8bf437","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1652744} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"30fde46b-c99a-4078-85d2-21bd0343948f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1661904} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919783,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19b424ca3be2c49209ce7e566953077e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541024,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNH0.8ZGXfQ-P3Fl8h3MmXMccOWmJZP-DjX4PLHbccbn4pfY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19b424ca3be2c49209ce7e566953077e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:01.786539033Z"}]},"request_id":"13fcec58-27ac-43c1-b6cd-f25ddd8ff810","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.1718478} device-1 | {"level":"info","message":"GET /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6? 200 17ms","method":"GET","requestID":"44bfd6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"19b424ca3be2c49209ce7e566953077e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 16ms","method":"GET","requestID":"44bffdc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Building connection plan","requestID":"df91f35e6c3998098434f21764a0ba66"} 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":"7e41fae2-94fa-4790-8e06-f9e1785fd3d1"},{"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":"419e63f8-cb59-4a8d-a199-5e88db32232c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3d44d85d-b465-4435-b2de-5aa92fec131e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"df91f35e6c3998098434f21764a0ba66"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"df91f35e6c3998098434f21764a0ba66"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19b424ca3be2c49209ce7e566953077e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19b424ca3be2c49209ce7e566953077e"} device-1 | {"level":"info","message":"GET /devices/b408a000-df63-4c17-955c-ef7757ebbe9e? 200 10ms","method":"GET","requestID":"19b424ca3be2c49209ce7e566953077e","responseTime":10,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.744173,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541023,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyM30.0Vvm4pzFTU_QdaNcrv1V4cMP4Je3rDpIA6xDKXxAglc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7ee725c2-022b-4f04-8346-88ba86dece10","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.185135} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6df81bff-f83a-4409-9403-61b3b559bd9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.185506} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb'","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb'","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"44c2e3f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"df91f35e6c3998098434f21764a0ba66"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44caac20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4175f35-800e-4e5b-a0d3-e59d076dee61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.230525} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.795961,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44caac20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44caac20-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44caac20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling 200 8ms","method":"POST","requestID":"44caac20-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44cc0bb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de28657e-a1c1-419d-8688-5867d000bcbd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541024.2394388} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.073657,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"44cc0bb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"44cc0bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44cc0bb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling 200 8ms","method":"POST","requestID":"44cc0bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling"} device-1 | {"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1855826002807081432 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:ujHE\r\na=ice-pwd:cu/W2Ki91Eq7BsGDykN+YZdU\r\na=ice-options:trickle\r\na=fingerprint:sha-256 44:6A:D9:90:B9:1E:91:27:44:84:F0:01:28:89:78:33:E0:59:15:A3:E6:12:A8:D4:B8:F1:10:E8:A0:B7:D8:3C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ae0cc90a64450512ba754f3ddd73f07","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7ae0cc90a64450512ba754f3ddd73f07","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"}}},"level":"info","message":"received a callback","requestID":"7ae0cc90a64450512ba754f3ddd73f07"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"7ae0cc90a64450512ba754f3ddd73f07","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ae0cc90a64450512ba754f3ddd73f07"} device-1 | {"content":{"candidate":"candidate:2099187736 1 udp 2113937151 3599648d-084a-47a6-a1d1-06f2dd59ef88.local 44057 typ host generation 0 ufrag ujHE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4180834919 1 udp 1677729535 141.24.211.56 44057 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ujHE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2856306156 1 udp 33562623 141.24.210.113 49644 typ relay raddr 141.24.211.56 rport 44057 generation 0 ufrag ujHE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","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/b408a000-df63-4c17-955c-ef7757ebbe9e'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e'"} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","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/2903fb2a-ee0f-49dc-83fb-2436178275bb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e05931d4692cc055fb48b10a46948f12","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e05931d4692cc055fb48b10a46948f12","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"}}},"level":"info","message":"received a callback","requestID":"e05931d4692cc055fb48b10a46948f12"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"460c53e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2903fb2a-ee0f-49dc-83fb-2436178275bb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d4c994d-76e1-4231-b83b-8977fbd1db51","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.339555} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.515655,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"460c53e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb","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":"460c53e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"460c53e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb 200 10ms","method":"GET","requestID":"460c53e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"e05931d4692cc055fb48b10a46948f12","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"e05931d4692cc055fb48b10a46948f12"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46110ed0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b13640e2-714c-421c-9ea8-3464dc0876b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.3706722} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.402629,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46110ed0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46110ed0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46110ed0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling 200 9ms","method":"POST","requestID":"46110ed0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4612e390-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a24b1a5-199c-4d29-bd00-5c8dd948ce7c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.3826194} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.797789,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4612e390-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4612e390-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4612e390-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling 200 9ms","method":"POST","requestID":"4612e390-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI","level":"info","message":"auth send jwt","requestID":"aaeaf71b98927840bb36aea3129322a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aaeaf71b98927840bb36aea3129322a0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","requestID":"aaeaf71b98927840bb36aea3129322a0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.159394,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"aaeaf71b98927840bb36aea3129322a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541026,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aaeaf71b98927840bb36aea3129322a0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","requestID":"aaeaf71b98927840bb36aea3129322a0"} experiment-1 | {"level":"info","message":"GET /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d 200 15ms","method":"GET","requestID":"aaeaf71b98927840bb36aea3129322a0","responseTime":15,"status":200,"url":"/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aaeaf71b98927840bb36aea3129322a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI","level":"info","message":"auth send jwt","requestID":"2761bbd2cd0022e6376221139f4dd52f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2761bbd2cd0022e6376221139f4dd52f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","requestID":"2761bbd2cd0022e6376221139f4dd52f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.18423,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2761bbd2cd0022e6376221139f4dd52f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541026,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2761bbd2cd0022e6376221139f4dd52f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Attempting to finish experiment","requestID":"2761bbd2cd0022e6376221139f4dd52f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.332052,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541026,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb","device":"b408a000-df63-4c17-955c-ef7757ebbe9e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d1eee9ee-6b14-4536-a172-3c59caccdda6","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2903fb2a-ee0f-49dc-83fb-2436178275bb","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2903fb2a-ee0f-49dc-83fb-2436178275bb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2903fb2a-ee0f-49dc-83fb-2436178275bb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"1f233d28-2483-4936-905f-5867890a1d20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.494885} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"223e5300bfafaccc8e07297dca97a534","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb8b7626-962f-4545-9a97-8c7bb4a6747b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.4954426} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"223e5300bfafaccc8e07297dca97a534","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7743790a1701351fb457f588828274b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c7743790a1701351fb457f588828274b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"}}},"level":"info","message":"received a callback","requestID":"c7743790a1701351fb457f588828274b"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"}}},"level":"info","message":"received a callback","requestID":"223e5300bfafaccc8e07297dca97a534"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb 204 45ms","method":"DELETE","requestID":"4620ed50-86cf-11ef-b00e-2fb111b9dda5","responseTime":45,"status":204,"url":"/peerconnections/2903fb2a-ee0f-49dc-83fb-2436178275bb"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"},"level":"info","message":"Successfully finished experiment","requestID":"2761bbd2cd0022e6376221139f4dd52f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"462b4d90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1eee9ee-6b14-4536-a172-3c59caccdda6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6bd7ab26-2fa5-4219-9321-c96d881e6a66","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.544335} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.941815,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"462b4d90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6","object_type":"device","rebac_allow":false,"scope_allow":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":"462b4d90-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"462b4d90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling 200 13ms","method":"POST","requestID":"462b4d90-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/d1eee9ee-6b14-4536-a172-3c59caccdda6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"462dbe90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed1640c6-87a0-4f36-b0e9-ffc4a837f25d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed1640c6-87a0-4f36-b0e9-ffc4a837f25d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"ca247c17-4bb3-4122-b5f9-41a521a50246","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.55327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5bebff1-3270-4bae-8cfa-05a6c40f0cff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.5535643} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"2761bbd2cd0022e6376221139f4dd52f","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb408a000-df63-4c17-955c-ef7757ebbe9e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f7a5feb-66c2-4285-8bc7-f0c1ec52787f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.5671883} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.578016,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"462dbe90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b408a000-df63-4c17-955c-ef7757ebbe9e","object_type":"device","rebac_allow":false,"scope_allow":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":"462dbe90-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"462dbe90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling 200 21ms","method":"POST","requestID":"462dbe90-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/b408a000-df63-4c17-955c-ef7757ebbe9e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d","requestID":"2761bbd2cd0022e6376221139f4dd52f"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d 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":"2761bbd2cd0022e6376221139f4dd52f"} experiment-1 | {"level":"info","message":"DELETE /experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d 204 172ms","method":"DELETE","requestID":"2761bbd2cd0022e6376221139f4dd52f","responseTime":172,"status":204,"url":"/experiments/ed1640c6-87a0-4f36-b0e9-ffc4a837f25d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3664","request_time":"4.299","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"57d60f14e8345c7cf3f1659d7bfd09cd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"c7743790a1701351fb457f588828274b","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"c7743790a1701351fb457f588828274b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"223e5300bfafaccc8e07297dca97a534","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"223e5300bfafaccc8e07297dca97a534"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI","level":"info","message":"auth send jwt","requestID":"d54a2a16a373b062e96297c1a0d6e050"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d54a2a16a373b062e96297c1a0d6e050","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d54a2a16a373b062e96297c1a0d6e050"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3125","request_time":"2.799","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c4aa1498d0fc0239522c4f40ec5decf3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.214206,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d54a2a16a373b062e96297c1a0d6e050","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541026,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","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/d1eee9ee-6b14-4536-a172-3c59caccdda6' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e03ec86c-2f66-4c96-b905-4c7b610158fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.661205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","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/b408a000-df63-4c17-955c-ef7757ebbe9e' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ce542c9-1064-40fe-ad8f-52099a6e68f8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.6670992} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2ac80403-6314-4d59-a917-b19304ac3639","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.6785247} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"747452f7-f7f9-43fc-9a55-5fa64d627880","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.678826} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"20f0ed4e-ce0f-417b-8a67-893834893bb8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.682717} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d54a2a16a373b062e96297c1a0d6e050"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"d54a2a16a373b062e96297c1a0d6e050","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d54a2a16a373b062e96297c1a0d6e050"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI","level":"info","message":"auth send jwt","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.891452,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541026,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyNn0.01Y8BYLeEecafVu39cU6FSo0ukWon2nByrLfDVYybQI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0571ab25-afdd-4821-b766-bae4b79eac10","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.7115753} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57bdda51-49df-4c8c-b21b-a57f97e1d3df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.716013} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3c57267f-199f-4701-babb-fd71c0dcbb8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.7274053} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"363effb2-a1c8-4e0f-a1f6-21ba4fe390da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.7278574} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"626a61b8-575c-45ae-bf82-94f7d027a057","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541026.7333786} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a27d50fe1e7bbdd183a47d3a1a68f2e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"95111840a8053fd0a9948239ee61f4aa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"95111840a8053fd0a9948239ee61f4aa","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"1ae3447bce7184c106f4abac7b4e9eb5"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"95111840a8053fd0a9948239ee61f4aa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1ae3447bce7184c106f4abac7b4e9eb5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"95111840a8053fd0a9948239ee61f4aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"95111840a8053fd0a9948239ee61f4aa","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586818,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ae3447bce7184c106f4abac7b4e9eb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"eef396c7-bafa-40a7-a76c-aee7bd412364","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.2165642} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"95111840a8053fd0a9948239ee61f4aa","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"adf3fd3b-07f4-47c7-a9af-7aaef3f4d541","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.21782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d746ca13-c7ff-4ff8-85c2-0fde0e2f723d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.2227373} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"95111840a8053fd0a9948239ee61f4aa","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77d0c5b3-7a2f-48e4-96d5-d76d643a61ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.224952} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"5755bee3-a4d8-450e-ba37-9389ab3942ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.2286105} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1ae3447bce7184c106f4abac7b4e9eb5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/56819794-c444-4e0e-9b25-7b10634a1633 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1ae3447bce7184c106f4abac7b4e9eb5"} device-1 | {"level":"info","message":"PATCH /devices/56819794-c444-4e0e-9b25-7b10634a1633 200 26ms","method":"PATCH","requestID":"1ae3447bce7184c106f4abac7b4e9eb5","responseTime":26,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"f4f0ee76339b267673f61e5e00e539b0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4f0ee76339b267673f61e5e00e539b0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f4f0ee76339b267673f61e5e00e539b0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f4f0ee76339b267673f61e5e00e539b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4f0ee76339b267673f61e5e00e539b0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"d43e4fd0-9b9c-4eab-b94f-d232fc4043df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.2419283} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95111840a8053fd0a9948239ee61f4aa","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"95111840a8053fd0a9948239ee61f4aa"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/04509904-36b8-4a5a-a369-c972fff0568c HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"95111840a8053fd0a9948239ee61f4aa"} device-1 | {"level":"info","message":"PATCH /devices/04509904-36b8-4a5a-a369-c972fff0568c 200 42ms","method":"PATCH","requestID":"95111840a8053fd0a9948239ee61f4aa","responseTime":42,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"1a330b1879390cb47b1c2e17e150dd77"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a330b1879390cb47b1c2e17e150dd77","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1a330b1879390cb47b1c2e17e150dd77"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706049,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1a330b1879390cb47b1c2e17e150dd77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a330b1879390cb47b1c2e17e150dd77","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f4f0ee76339b267673f61e5e00e539b0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f4f0ee76339b267673f61e5e00e539b0"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/websocket 200 20ms","method":"POST","requestID":"f4f0ee76339b267673f61e5e00e539b0","responseTime":20,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1a330b1879390cb47b1c2e17e150dd77"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/websocket 200 14ms","method":"POST","requestID":"1a330b1879390cb47b1c2e17e150dd77","responseTime":14,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1a330b1879390cb47b1c2e17e150dd77"} device-1 | {"level":"info","message":"device 'http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"e36c4b4fa9de12fcf373488b5d524d81"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e36c4b4fa9de12fcf373488b5d524d81","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e36c4b4fa9de12fcf373488b5d524d81"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677343,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e36c4b4fa9de12fcf373488b5d524d81","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e36c4b4fa9de12fcf373488b5d524d81","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"7512c35d-7960-4f43-9d0a-2a0fd7d47627","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.2998366} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e36c4b4fa9de12fcf373488b5d524d81","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e36c4b4fa9de12fcf373488b5d524d81"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e36c4b4fa9de12fcf373488b5d524d81"} device-1 | {"level":"info","message":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? 200 12ms","method":"GET","requestID":"e36c4b4fa9de12fcf373488b5d524d81","responseTime":12,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"ec2f5495b083bdba64470e5cb102b8c6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ec2f5495b083bdba64470e5cb102b8c6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec2f5495b083bdba64470e5cb102b8c6"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983978,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ec2f5495b083bdba64470e5cb102b8c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec2f5495b083bdba64470e5cb102b8c6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"35a8f04a-07ce-44b6-a94c-9f6bc877dd66","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.3170726} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec2f5495b083bdba64470e5cb102b8c6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec2f5495b083bdba64470e5cb102b8c6"} device-1 | {"level":"info","message":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? 200 15ms","method":"GET","requestID":"ec2f5495b083bdba64470e5cb102b8c6","responseTime":15,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec2f5495b083bdba64470e5cb102b8c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"3f922e71c6890704f67023410ab99d88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3f922e71c6890704f67023410ab99d88","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3f922e71c6890704f67023410ab99d88"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.147155,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3f922e71c6890704f67023410ab99d88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3f922e71c6890704f67023410ab99d88","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to run experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to book experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully booked experiment","requestID":"3f922e71c6890704f67023410ab99d88"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66621,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.511451,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"741ece06-e28e-48af-bd31-a35722e90038","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.374563} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"133cdd3e-6cf4-4e74-a089-6c1f7ec7a665","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.3752108} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? 200 14ms","method":"GET","requestID":"46a9f370-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? 200 13ms","method":"GET","requestID":"46aa4190-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Setting up experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully set up experiment","requestID":"3f922e71c6890704f67023410ab99d88"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46b453b0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully running experiment","requestID":"3f922e71c6890704f67023410ab99d88"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885766,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669647,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.516501,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3547cdcd-2643-4277-bf09-3b3f589c121c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4407847} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b453b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"46b453b0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"c74b30bf-13ab-411b-982a-12c22309d82c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4445212} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46b453b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling 200 12ms","method":"POST","requestID":"46b453b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"734c724e-55ce-483d-a7d1-9a3c7d75a520","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4472697} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46b6c4b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} device-1 | {"level":"info","message":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? 200 21ms","method":"GET","requestID":"46b40590-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? 200 21ms","method":"GET","requestID":"46b42ca0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46b7af10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8effb507-733f-4e77-89a8-5fb51c369dd4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4568872} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.230021,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b6c4b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"46b6c4b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F875fb8c4-771f-41b9-a651-dd3603c1dca3#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F875fb8c4-771f-41b9-a651-dd3603c1dca3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"06d99f98-b439-46f8-ba97-8d4773002fce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4587986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f04aae88-7de6-48f5-8559-0df8d83947ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4590378} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46b6c4b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling 200 11ms","method":"POST","requestID":"46b6c4b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"3f922e71c6890704f67023410ab99d88","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cf08d51-86cf-4d9c-aeb9-5b641a595225","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4644656} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.589753,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b7af10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46b7af10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3f922e71c6890704f67023410ab99d88"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46b7af10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling 200 12ms","method":"POST","requestID":"46b7af10-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"level":"info","message":"POST /experiments? 201 141ms","method":"POST","requestID":"3f922e71c6890704f67023410ab99d88","responseTime":141,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46b9d1f0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"a2b518469e504eca5cf94d39b9f20626"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a2b518469e504eca5cf94d39b9f20626","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2b518469e504eca5cf94d39b9f20626"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b166b1f-df2b-4f6f-b8a2-446590a41be2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4758885} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.829826,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46b9d1f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"46b9d1f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685863,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a2b518469e504eca5cf94d39b9f20626","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2b518469e504eca5cf94d39b9f20626","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46b9d1f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling 200 12ms","method":"POST","requestID":"46b9d1f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"5b6f9b5a-4275-448a-b135-875acfe6868c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4849772} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a2b518469e504eca5cf94d39b9f20626","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.679481,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2b518469e504eca5cf94d39b9f20626"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a2b518469e504eca5cf94d39b9f20626"} device-1 | {"level":"info","message":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? 200 16ms","method":"GET","requestID":"a2b518469e504eca5cf94d39b9f20626","responseTime":16,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947375,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.678488265Z"}]},"request_id":"aaf838f5-89b0-4e08-b160-a1f8428ca81c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.49387} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo","level":"info","message":"auth send jwt","requestID":"9c33eddb06c1b9669650b651eb8d3047"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c33eddb06c1b9669650b651eb8d3047","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"3a9f6718-d68a-4eed-9b6c-f216506efc21","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.4952009} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c33eddb06c1b9669650b651eb8d3047"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805237,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9c33eddb06c1b9669650b651eb8d3047","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c33eddb06c1b9669650b651eb8d3047","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/56819794-c444-4e0e-9b25-7b10634a1633? 200 15ms","method":"GET","requestID":"46bbf4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? 200 16ms","method":"GET","requestID":"46bc1be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Building connection plan","requestID":"3f922e71c6890704f67023410ab99d88"} 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":"2dfa4dca-8889-44df-9b39-ee8c182d548f"},{"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":"c2d060a5-5b90-4c2a-963c-5960aec573b6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6cf793aa-2feb-4e46-97f6-8a63699b1f44"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3f922e71c6890704f67023410ab99d88"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3f922e71c6890704f67023410ab99d88"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:06.727380100Z"}]},"request_id":"4d606702-b13d-48ab-9069-7d7b9b1556da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.5035713} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c33eddb06c1b9669650b651eb8d3047","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c33eddb06c1b9669650b651eb8d3047"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.816623,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c33eddb06c1b9669650b651eb8d3047"} device-1 | {"level":"info","message":"GET /devices/04509904-36b8-4a5a-a369-c972fff0568c? 200 13ms","method":"GET","requestID":"9c33eddb06c1b9669650b651eb8d3047","responseTime":13,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541027,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyN30.AIU_QAiUtn-nvNO2GQ_BLtqubBmTi0HvB87O2GVXcgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"cc82f406-fc24-49bb-986b-4d7871f85401","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.515565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3cbf8322-8b10-4579-9efe-fa92229a8b70","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.5158482} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a'","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a'","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"46bf0210-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3f922e71c6890704f67023410ab99d88"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46c67c20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07321e0e-31e1-40e9-a265-c976edd55fc9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.5591242} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422965,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46c67c20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46c67c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46c67c20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling 200 9ms","method":"POST","requestID":"46c67c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"46c829d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9d0232a-59e4-4f23-8241-402696d0592f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541027.5703278} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.437756,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"46c829d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"46c829d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"46c829d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling 200 10ms","method":"POST","requestID":"46c829d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling"} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"667d4c41592c98c3a68b226b844657b7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"667d4c41592c98c3a68b226b844657b7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"}}},"level":"info","message":"received a callback","requestID":"667d4c41592c98c3a68b226b844657b7"} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"667d4c41592c98c3a68b226b844657b7","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"667d4c41592c98c3a68b226b844657b7"} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","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/ed105e65-c0b7-42a0-9dff-261527f22e7a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"796f2c1d1e53c15ed3be205e971a4f8c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"796f2c1d1e53c15ed3be205e971a4f8c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"}}},"level":"info","message":"received a callback","requestID":"796f2c1d1e53c15ed3be205e971a4f8c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"48053db0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fed105e65-c0b7-42a0-9dff-261527f22e7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ff1b58c-b6e3-4b71-9521-2ee06d3a37b9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.650821} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.95702,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48053db0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a","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":"48053db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"48053db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a 200 12ms","method":"GET","requestID":"48053db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"796f2c1d1e53c15ed3be205e971a4f8c","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"796f2c1d1e53c15ed3be205e971a4f8c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"480b7f40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1286e063-6c73-4727-9d16-c0214d016197","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.6906872} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.817784,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"480b7f40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","rebac_allow":false,"scope_allow":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":"480b7f40-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"480b7f40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling 200 13ms","method":"POST","requestID":"480b7f40-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"480df040-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dfea1657-b3c9-4e60-93cd-8a69b5ab1045","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.7070591} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"480df040-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","rebac_allow":false,"scope_allow":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":"480df040-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"480df040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling 200 14ms","method":"POST","requestID":"480df040-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8","level":"info","message":"auth send jwt","requestID":"b46fa2aa20aa6b2a055f694d03514011"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b46fa2aa20aa6b2a055f694d03514011","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","requestID":"b46fa2aa20aa6b2a055f694d03514011"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.149483,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b46fa2aa20aa6b2a055f694d03514011","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541029,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b46fa2aa20aa6b2a055f694d03514011","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","requestID":"b46fa2aa20aa6b2a055f694d03514011"} experiment-1 | {"level":"info","message":"GET /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3 200 16ms","method":"GET","requestID":"b46fa2aa20aa6b2a055f694d03514011","responseTime":16,"status":200,"url":"/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"} gateway-1 | {"time_local":"10/Oct/2024:06:17:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b46fa2aa20aa6b2a055f694d03514011"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8","level":"info","message":"auth send jwt","requestID":"40508a4a1644446d79fb797df79e6959"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40508a4a1644446d79fb797df79e6959","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","requestID":"40508a4a1644446d79fb797df79e6959"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.231924,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"40508a4a1644446d79fb797df79e6959","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541029,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40508a4a1644446d79fb797df79e6959","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Attempting to finish experiment","requestID":"40508a4a1644446d79fb797df79e6959"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.320814,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541029,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"04509904-36b8-4a5a-a369-c972fff0568c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"56819794-c444-4e0e-9b25-7b10634a1633","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"236296c7f18db123bf77998ea089a6f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"236296c7f18db123bf77998ea089a6f5","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca323f1b4e8fd9fe3482d6ff0b3c0da0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ca323f1b4e8fd9fe3482d6ff0b3c0da0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"}}},"level":"info","message":"received a callback","requestID":"236296c7f18db123bf77998ea089a6f5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fed105e65-c0b7-42a0-9dff-261527f22e7a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fed105e65-c0b7-42a0-9dff-261527f22e7a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5de8531e-a6ba-4a91-83f3-199e198d7e63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.8022685} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"}}},"level":"info","message":"received a callback","requestID":"ca323f1b4e8fd9fe3482d6ff0b3c0da0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7735e63-46f1-4df0-91ff-343648c5b0a8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.802955} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ed105e65-c0b7-42a0-9dff-261527f22e7a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a 204 49ms","method":"DELETE","requestID":"4818ecc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":49,"status":204,"url":"/peerconnections/ed105e65-c0b7-42a0-9dff-261527f22e7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"},"level":"info","message":"Successfully finished experiment","requestID":"40508a4a1644446d79fb797df79e6959"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48241050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04509904-36b8-4a5a-a369-c972fff0568c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27798187-ccb1-462a-bc20-710e577d1658","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.8530712} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.180637,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48241050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c","object_type":"device","rebac_allow":false,"scope_allow":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":"48241050-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48241050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling 200 15ms","method":"POST","requestID":"48241050-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/04509904-36b8-4a5a-a369-c972fff0568c/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F875fb8c4-771f-41b9-a651-dd3603c1dca3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F875fb8c4-771f-41b9-a651-dd3603c1dca3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"ef21a18e-dfa9-4150-a7c4-fec7f7470e39","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.860629} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25611e01-db81-4a64-9386-356efd8a7069","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.861196} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4826f680-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"40508a4a1644446d79fb797df79e6959","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56819794-c444-4e0e-9b25-7b10634a1633","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17247a48-155f-4f04-9fcb-c952ac9728f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.8715944} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.041745,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4826f680-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/56819794-c444-4e0e-9b25-7b10634a1633","object_type":"device","rebac_allow":false,"scope_allow":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":"4826f680-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4826f680-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling 200 14ms","method":"POST","requestID":"4826f680-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/56819794-c444-4e0e-9b25-7b10634a1633/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3","requestID":"40508a4a1644446d79fb797df79e6959"} gateway-1 | {"time_local":"10/Oct/2024:06:17:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3 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":"40508a4a1644446d79fb797df79e6959"} experiment-1 | {"level":"info","message":"DELETE /experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3 204 168ms","method":"DELETE","requestID":"40508a4a1644446d79fb797df79e6959","responseTime":168,"status":204,"url":"/experiments/875fb8c4-771f-41b9-a651-dd3603c1dca3"} gateway-1 | {"time_local":"10/Oct/2024:06:17:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.667","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"47eea077f1f70611e55e4d8dfe1e09fc"} gateway-1 | {"time_local":"10/Oct/2024:06:17:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.659","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"889993468fe2cf81a36307226a9c7045"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"236296c7f18db123bf77998ea089a6f5","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"236296c7f18db123bf77998ea089a6f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"ca323f1b4e8fd9fe3482d6ff0b3c0da0","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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":"ca323f1b4e8fd9fe3482d6ff0b3c0da0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8","level":"info","message":"auth send jwt","requestID":"93541ea882a75adf9c183bed63f54cd9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93541ea882a75adf9c183bed63f54cd9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"93541ea882a75adf9c183bed63f54cd9"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/04509904-36b8-4a5a-a369-c972fff0568c' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.984723,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"93541ea882a75adf9c183bed63f54cd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541029,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","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/56819794-c444-4e0e-9b25-7b10634a1633' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b8f937a5-e91c-4c53-9571-56e1b1c30a10","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.9586532} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"870c42b9-891a-4cf7-b48b-9fa3a8a6efe8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.9655766} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"21d0eb3f-427e-4f34-8bef-bd578f2696c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.9774957} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7367992e-f6a1-4d47-90d6-74f754e94ed1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.9776852} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"3190f4f8-e028-45c9-898f-d91550a0517b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541029.9832659} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"93541ea882a75adf9c183bed63f54cd9"} gateway-1 | {"time_local":"10/Oct/2024:06:17:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93541ea882a75adf9c183bed63f54cd9"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"93541ea882a75adf9c183bed63f54cd9","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8","level":"info","message":"auth send jwt","requestID":"f0451b32455eea26eee92f12c4c5d985"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0451b32455eea26eee92f12c4c5d985","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f0451b32455eea26eee92f12c4c5d985"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.750776,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f0451b32455eea26eee92f12c4c5d985","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541029,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAyOX0.jkOI4Klm__Y2BRULrwb3wvcaRidSm6H6FBOZv_0tBZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c1c95d5e-a66f-42f1-be68-a445e6c2b707","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.0079598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8025027-dd12-401d-a357-8ccbe7c5a310","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.0136597} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d5e69eb0-dd7f-4345-9596-ef1636a82713","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.030113} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e4d9ce0-397a-4850-a884-4a1b79bdcacc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.0303931} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"19e0d649-e308-4d03-a2ec-43ffbb80a087","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.0355134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f0451b32455eea26eee92f12c4c5d985"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0451b32455eea26eee92f12c4c5d985"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"f0451b32455eea26eee92f12c4c5d985","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"920a03fe8504008e6a3d0331ff66eba7"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"920a03fe8504008e6a3d0331ff66eba7","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"920a03fe8504008e6a3d0331ff66eba7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625929,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"920a03fe8504008e6a3d0331ff66eba7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"920a03fe8504008e6a3d0331ff66eba7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836433,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"9bce35fd-1085-4149-b956-99fb54a6a7da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5174668} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"920a03fe8504008e6a3d0331ff66eba7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"b97eb01e-bae9-4379-b17f-307e469e7270","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5190153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"647e623f-dd94-42e4-88b9-d2626ea3bbfd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5227349} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"920a03fe8504008e6a3d0331ff66eba7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e92bc5e-d1cc-423a-9291-017ce3209d5b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5242424} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"2d59680e-f97e-4659-8f51-9c0af24734f6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5273163} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3"} device-1 | {"level":"info","message":"PATCH /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d 200 21ms","method":"PATCH","requestID":"c5bceb47ef5c1f5bece943fd9f16bdc3","responseTime":21,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"62624f5d2b5ceff7ab0863c620b160bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"62624f5d2b5ceff7ab0863c620b160bb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"62624f5d2b5ceff7ab0863c620b160bb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"09389a1d-ae36-435a-a220-e085e3351ef0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5370536} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"920a03fe8504008e6a3d0331ff66eba7","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71212,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"920a03fe8504008e6a3d0331ff66eba7"} device-1 | {"level":"info","message":"PATCH /devices/070aa24e-0fb3-40a9-900c-10deabd1a264 200 33ms","method":"PATCH","requestID":"920a03fe8504008e6a3d0331ff66eba7","responseTime":33,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/070aa24e-0fb3-40a9-900c-10deabd1a264 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"920a03fe8504008e6a3d0331ff66eba7"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"62624f5d2b5ceff7ab0863c620b160bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62624f5d2b5ceff7ab0863c620b160bb","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715501,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"62624f5d2b5ceff7ab0863c620b160bb"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/websocket 200 17ms","method":"POST","requestID":"62624f5d2b5ceff7ab0863c620b160bb","responseTime":17,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"62624f5d2b5ceff7ab0863c620b160bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/websocket 200 14ms","method":"POST","requestID":"b40b6bbcb308a4d2c599b7fb4b2a03a2","responseTime":14,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"c9e0b15d90fc920d1810346295f6b621"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9e0b15d90fc920d1810346295f6b621","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9e0b15d90fc920d1810346295f6b621"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62304,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c9e0b15d90fc920d1810346295f6b621","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c9e0b15d90fc920d1810346295f6b621","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"2930178e-cc55-4b5e-84b7-ea668d7b65fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.5935504} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c9e0b15d90fc920d1810346295f6b621","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9e0b15d90fc920d1810346295f6b621"} device-1 | {"level":"info","message":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? 200 11ms","method":"GET","requestID":"c9e0b15d90fc920d1810346295f6b621","responseTime":11,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c9e0b15d90fc920d1810346295f6b621"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"fff20589ebeb8e649c0f87915d4c62c7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fff20589ebeb8e649c0f87915d4c62c7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fff20589ebeb8e649c0f87915d4c62c7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fff20589ebeb8e649c0f87915d4c62c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fff20589ebeb8e649c0f87915d4c62c7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"450de51c-917b-43dc-bed3-d2a5558c3dd7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.6083205} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fff20589ebeb8e649c0f87915d4c62c7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fff20589ebeb8e649c0f87915d4c62c7"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fff20589ebeb8e649c0f87915d4c62c7"} device-1 | {"level":"info","message":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? 200 10ms","method":"GET","requestID":"fff20589ebeb8e649c0f87915d4c62c7","responseTime":10,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"37ae06f78e345697af8c81ce55a5f2cb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.121916,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"37ae06f78e345697af8c81ce55a5f2cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"37ae06f78e345697af8c81ce55a5f2cb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to run experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to book experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully booked experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922296,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626582,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"64d2ebb5-9eb7-41b3-85d5-139333efd6b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.6644099} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"7f3757f6-505e-4c29-b49c-3d3be0c9a738","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.6655426} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? 200 17ms","method":"GET","requestID":"489f33c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? 200 16ms","method":"GET","requestID":"489f81e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Setting up experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully set up experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48aa7e60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742144,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully running experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145545,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42516","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.641486,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20b60c3b-5362-4d30-aed6-629fe6e20bc7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.733206} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48aa7e60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","rebac_allow":false,"scope_allow":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":"48aa7e60-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48aa7e60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling 200 14ms","method":"POST","requestID":"48aa7e60-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"8d9e59de-38d0-407b-a62e-0acfae87c23e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7393172} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"49c20476-8b71-4e23-997a-692eead3fce6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7409372} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48ad1670-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? 200 22ms","method":"GET","requestID":"48aa5750-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"332b7cd1-7571-4e33-8218-40b0d57e466b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.747707} device-1 | {"level":"info","message":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? 200 25ms","method":"GET","requestID":"48aa0930-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.442169,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48ae27e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48ad1670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"48ad1670-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd4e89c47-0c37-4529-9de1-a9c13ad0732e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd4e89c47-0c37-4529-9de1-a9c13ad0732e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4b0b3860-0552-4911-b24c-fd4655b474ea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.751015} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83b00ef3-95eb-496c-8171-bfb0fbc547df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7511013} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48ad1670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling 200 11ms","method":"POST","requestID":"48ad1670-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"37ae06f78e345697af8c81ce55a5f2cb","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb075f40-6533-4ed4-8717-3b466d5e4973","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7568963} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.030434,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48ae27e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48ae27e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"37ae06f78e345697af8c81ce55a5f2cb","responseTime":146,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48ae27e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling 200 15ms","method":"POST","requestID":"48ae27e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48b098e0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"1fe791260e5364a89af43d8ac34655a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1fe791260e5364a89af43d8ac34655a5","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1fe791260e5364a89af43d8ac34655a5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88cd91b0-c29f-4b1f-8642-b44fd3816d9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7719648} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.000188,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48b098e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"48b098e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038888,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1fe791260e5364a89af43d8ac34655a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1fe791260e5364a89af43d8ac34655a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48b098e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling 200 12ms","method":"POST","requestID":"48b098e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"783dbcd7-b2fe-43d1-b5cd-c87e8b95570f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7789779} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1fe791260e5364a89af43d8ac34655a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1fe791260e5364a89af43d8ac34655a5"} device-1 | {"level":"info","message":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? 200 16ms","method":"GET","requestID":"1fe791260e5364a89af43d8ac34655a5","responseTime":16,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1fe791260e5364a89af43d8ac34655a5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.871087,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:42508","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.252258,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE","level":"info","message":"auth send jwt","requestID":"5ef1203fef9bfa0f042def859a314a57"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5ef1203fef9bfa0f042def859a314a57","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ef1203fef9bfa0f042def859a314a57"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:09.977460949Z"}]},"request_id":"064d94e1-8a56-4fbb-afa9-14603e9f0369","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7930155} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"429a648f-a025-4ed1-8b93-9f3ef1a56b77","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.7940204} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687043,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} device-1 | {"level":"info","message":"GET /devices/070aa24e-0fb3-40a9-900c-10deabd1a264? 200 16ms","method":"GET","requestID":"48b2e2d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ef1203fef9bfa0f042def859a314a57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ef1203fef9bfa0f042def859a314a57","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? 200 19ms","method":"GET","requestID":"48b309e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:10.030077221Z"}]},"request_id":"2e22a6cd-d689-4939-97f9-f77cf2928e97","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.8016672} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Building connection plan","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} 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":"f1f99920-220e-4ca6-af70-7f822d4c60a8"},{"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":"01e7b33f-18e4-4613-a37f-3e9881d76583"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3d0515db-7c69-451a-9913-97b855e9a298"}]},"level":"info","message":"Built pairwise service configurations","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ef1203fef9bfa0f042def859a314a57","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ef1203fef9bfa0f042def859a314a57"} gateway-1 | {"time_local":"10/Oct/2024:06:17:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ef1203fef9bfa0f042def859a314a57"} device-1 | {"level":"info","message":"GET /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d? 200 14ms","method":"GET","requestID":"5ef1203fef9bfa0f042def859a314a57","responseTime":14,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.666297,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541030,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzMH0.N_J9xOgUl2-mmmonSLtW2GfC8ztaPKa-xmxKl02JxlE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"477be015-a86c-4dc1-bdef-5324339d85cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.8143518} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e10111e2-4d2c-4b02-8097-919d41af90fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.8147292} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6'","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6'","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"48b66540-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"37ae06f78e345697af8c81ce55a5f2cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48bddf50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47828076-4a26-4fe9-86d6-73b4aa78c087","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.858804} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.05297,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48bddf50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48bddf50-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48bddf50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling 200 9ms","method":"POST","requestID":"48bddf50-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48bf8d00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2dd6794-2ee2-4fc3-adb2-e976ec864f87","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541030.8690882} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.555734,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"48bf8d00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48bf8d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48bf8d00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling 200 9ms","method":"POST","requestID":"48bf8d00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling"} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be2b3d560b0ba7d6253f462ee69f5426","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"be2b3d560b0ba7d6253f462ee69f5426","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"}}},"level":"info","message":"received a callback","requestID":"be2b3d560b0ba7d6253f462ee69f5426"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"be2b3d560b0ba7d6253f462ee69f5426","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} gateway-1 | {"time_local":"10/Oct/2024:06:17:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"be2b3d560b0ba7d6253f462ee69f5426"} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","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/da802f8b-8f7f-4679-956f-fe52ee4b07e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96a01a8244140505a71d1123b2adf5d0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"96a01a8244140505a71d1123b2adf5d0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"}}},"level":"info","message":"received a callback","requestID":"96a01a8244140505a71d1123b2adf5d0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"49fc04a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda802f8b-8f7f-4679-956f-fe52ee4b07e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5fe32a8-edd0-478e-b0e8-d3c6632a925e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541032.9445615} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.102148,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"49fc04a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6","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":"49fc04a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"49fc04a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6 200 12ms","method":"GET","requestID":"49fc04a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"96a01a8244140505a71d1123b2adf5d0","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch","requestID":"96a01a8244140505a71d1123b2adf5d0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a021f20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7a7115c-d518-491b-ac91-4bad84d4f1cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541032.9838514} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.823414,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a021f20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a021f20-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a021f20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling 200 12ms","method":"POST","requestID":"4a021f20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a046910-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d20525fe-353c-4b1f-8771-c9f6d3d78ddc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541032.999861} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.529792,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a046910-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4a046910-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a046910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling 200 13ms","method":"POST","requestID":"4a046910-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4","level":"info","message":"auth send jwt","requestID":"11e055f66e35f076a5fe98e08be1d653"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"11e055f66e35f076a5fe98e08be1d653","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","requestID":"11e055f66e35f076a5fe98e08be1d653"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.506135,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"11e055f66e35f076a5fe98e08be1d653","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541033,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11e055f66e35f076a5fe98e08be1d653","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","requestID":"11e055f66e35f076a5fe98e08be1d653"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11e055f66e35f076a5fe98e08be1d653"} experiment-1 | {"level":"info","message":"GET /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e 200 16ms","method":"GET","requestID":"11e055f66e35f076a5fe98e08be1d653","responseTime":16,"status":200,"url":"/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4","level":"info","message":"auth send jwt","requestID":"2b02644ff5bdb040935a395909f5a4da"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2b02644ff5bdb040935a395909f5a4da","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","requestID":"2b02644ff5bdb040935a395909f5a4da"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.299229,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b02644ff5bdb040935a395909f5a4da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541033,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b02644ff5bdb040935a395909f5a4da","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Attempting to finish experiment","requestID":"2b02644ff5bdb040935a395909f5a4da"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.199766,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541033,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dea39ad6-931b-4dfc-b303-72dcb034b03d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"070aa24e-0fb3-40a9-900c-10deabd1a264","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"da802f8b-8f7f-4679-956f-fe52ee4b07e6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda802f8b-8f7f-4679-956f-fe52ee4b07e6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fda802f8b-8f7f-4679-956f-fe52ee4b07e6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"2aa0f6bd-7ad4-4629-8852-3e08103850ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.0959916} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88298d03-21b8-4274-b2a2-c907fe2964b2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.0964293} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e7d87fc29242ffd0d2227734e9d4a208","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e7d87fc29242ffd0d2227734e9d4a208","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f5dc683467a578ea5e4b46750b133a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f5dc683467a578ea5e4b46750b133a9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"}}},"level":"info","message":"received a callback","requestID":"e7d87fc29242ffd0d2227734e9d4a208"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"}}},"level":"info","message":"received a callback","requestID":"0f5dc683467a578ea5e4b46750b133a9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6 204 50ms","method":"DELETE","requestID":"4a104ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":50,"status":204,"url":"/peerconnections/da802f8b-8f7f-4679-956f-fe52ee4b07e6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"},"level":"info","message":"Successfully finished experiment","requestID":"2b02644ff5bdb040935a395909f5a4da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a1b4c70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdea39ad6-931b-4dfc-b303-72dcb034b03d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b121e490-a609-45bc-9e2e-d13a98d2d43e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.1509604} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.246821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a1b4c70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d","object_type":"device","rebac_allow":false,"scope_allow":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":"4a1b4c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a1b4c70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling 200 15ms","method":"POST","requestID":"4a1b4c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/dea39ad6-931b-4dfc-b303-72dcb034b03d/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd4e89c47-0c37-4529-9de1-a9c13ad0732e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd4e89c47-0c37-4529-9de1-a9c13ad0732e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d94b6a99-12d3-4bc7-b2be-1ee2cb4f033a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.158728} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a01dd9f-a4ae-495c-aa75-fd949136786a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.1593206} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a1e0b90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2b02644ff5bdb040935a395909f5a4da","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F070aa24e-0fb3-40a9-900c-10deabd1a264","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c4f8701-fb53-482d-8f49-d3677bff56cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.1709065} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.341348,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a1e0b90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/070aa24e-0fb3-40a9-900c-10deabd1a264","object_type":"device","rebac_allow":false,"scope_allow":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":"4a1e0b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a1e0b90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling 200 17ms","method":"POST","requestID":"4a1e0b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/070aa24e-0fb3-40a9-900c-10deabd1a264/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e","requestID":"2b02644ff5bdb040935a395909f5a4da"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e 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":"2b02644ff5bdb040935a395909f5a4da"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.671","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"99703f8bd2943d2258faa3431be9ce55"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.679","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f62441896f8ca5111ce2c834c0a34591"} experiment-1 | {"level":"info","message":"DELETE /experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e 204 178ms","method":"DELETE","requestID":"2b02644ff5bdb040935a395909f5a4da","responseTime":178,"status":204,"url":"/experiments/d4e89c47-0c37-4529-9de1-a9c13ad0732e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"e7d87fc29242ffd0d2227734e9d4a208","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"e7d87fc29242ffd0d2227734e9d4a208"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"0f5dc683467a578ea5e4b46750b133a9","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f5dc683467a578ea5e4b46750b133a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4","level":"info","message":"auth send jwt","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","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/dea39ad6-931b-4dfc-b303-72dcb034b03d' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.228163,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541033,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","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/070aa24e-0fb3-40a9-900c-10deabd1a264' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7cca7281-5746-4ef9-8464-47354fe740da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.2654285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82ae8bed-147d-4f00-9e81-ffc5c2bbf7ac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.2729166} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c8505566-d226-41ce-be13-20bbac56a092","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.2837234} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f458671-acf0-4858-b604-ac764e35513d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.2839935} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"d3db880e-c579-4251-802a-37b687690839","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.2892227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"6b31038ba5fd9d6742ef43a2ba966fdd","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4","level":"info","message":"auth send jwt","requestID":"b4ff6f9414469f55d22dd3743172f3e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b4ff6f9414469f55d22dd3743172f3e8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.94162,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b4ff6f9414469f55d22dd3743172f3e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541033,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzM30.fYEZft9NQDPrxeTr68Vl1U6FotX7t-e9q2lCckRvvT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"afd01202-9358-4b12-a823-8ba5d860c5ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.3194911} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7bc1900d-2f19-401c-a59e-a00011f1de95","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.3245096} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ddcc71f9-2875-4be0-8bba-8c9fb9f28413","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.336402} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3664ba9a-b11b-4a6e-a48b-7fb7a4230aa4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.3366456} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"30c2a41b-33dc-4e2f-86ad-4c48ae48d9a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541033.3413906} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b4ff6f9414469f55d22dd3743172f3e8"} gateway-1 | {"time_local":"10/Oct/2024:06:17:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4ff6f9414469f55d22dd3743172f3e8"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"b4ff6f9414469f55d22dd3743172f3e8","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07601d44be1a99df2b0acaf8084f7606","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"07601d44be1a99df2b0acaf8084f7606","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/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":"07601d44be1a99df2b0acaf8084f7606"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8bca76d3c60a4a8af1c399dba24a24e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/9627589c-a77d-4342-94c9-fdbbe3ad633f/websocket 200 1ms","method":"OPTIONS","requestID":"07601d44be1a99df2b0acaf8084f7606","responseTime":1,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f8bca76d3c60a4a8af1c399dba24a24e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/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":"f8bca76d3c60a4a8af1c399dba24a24e"} device-1 | {"level":"info","message":"OPTIONS /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/websocket 200 0ms","method":"OPTIONS","requestID":"f8bca76d3c60a4a8af1c399dba24a24e","responseTime":0,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"d32ae7a27243757e828028bdc3ae5694"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d32ae7a27243757e828028bdc3ae5694","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d32ae7a27243757e828028bdc3ae5694"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"0a6c243249a1f0d5ba340505aa32e797"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0a6c243249a1f0d5ba340505aa32e797","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0a6c243249a1f0d5ba340505aa32e797"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193661,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d32ae7a27243757e828028bdc3ae5694","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d32ae7a27243757e828028bdc3ae5694","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.85752,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0a6c243249a1f0d5ba340505aa32e797","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0a6c243249a1f0d5ba340505aa32e797","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d32ae7a27243757e828028bdc3ae5694"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/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":"d32ae7a27243757e828028bdc3ae5694"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/websocket 200 25ms","method":"POST","requestID":"d32ae7a27243757e828028bdc3ae5694","responseTime":25,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0a6c243249a1f0d5ba340505aa32e797"} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/websocket 200 33ms","method":"POST","requestID":"0a6c243249a1f0d5ba340505aa32e797","responseTime":33,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/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":"0a6c243249a1f0d5ba340505aa32e797"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7d551dd21b4c307259b4aafbadbc7960","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7d551dd21b4c307259b4aafbadbc7960","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7d551dd21b4c307259b4aafbadbc7960"} device-1 | {"level":"info","message":"OPTIONS /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 0ms","method":"OPTIONS","requestID":"7d551dd21b4c307259b4aafbadbc7960","responseTime":0,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"37109af0b223094b2f333dd915bbe7d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"37109af0b223094b2f333dd915bbe7d3","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"37109af0b223094b2f333dd915bbe7d3"} device-1 | {"level":"info","message":"OPTIONS /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 1ms","method":"OPTIONS","requestID":"37109af0b223094b2f333dd915bbe7d3","responseTime":1,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"1807f379d92fa567a8499fa1491ba1ae"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"1807f379d92fa567a8499fa1491ba1ae","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1807f379d92fa567a8499fa1491ba1ae"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"b76df6d4cd1abe195174cd925ec6c3e5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.018771,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1807f379d92fa567a8499fa1491ba1ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1807f379d92fa567a8499fa1491ba1ae","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b76df6d4cd1abe195174cd925ec6c3e5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351707,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b76df6d4cd1abe195174cd925ec6c3e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"0e2ee00b-e774-4abf-bdbd-c1b460e0365c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.386091} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1807f379d92fa567a8499fa1491ba1ae","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"302b6862-9590-4ac3-91d2-d2d25601c43d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.3908255} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26700968-f89d-4a8e-85b8-eac1dbe753d3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.3930268} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1807f379d92fa567a8499fa1491ba1ae","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8039a456-00d4-4139-a51d-5947b5452387","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.4005487} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"64ec7755-f78b-4c8b-a3fd-907c029113a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.4139795} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"daf8012e-07f4-4871-ac5f-267328f47d90","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.4154913} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b76df6d4cd1abe195174cd925ec6c3e5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1807f379d92fa567a8499fa1491ba1ae","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b76df6d4cd1abe195174cd925ec6c3e5"} device-1 | {"level":"info","message":"PATCH /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 42ms","method":"PATCH","requestID":"b76df6d4cd1abe195174cd925ec6c3e5","responseTime":42,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1807f379d92fa567a8499fa1491ba1ae"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.060","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1807f379d92fa567a8499fa1491ba1ae"} device-1 | {"level":"info","message":"PATCH /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 50ms","method":"PATCH","requestID":"1807f379d92fa567a8499fa1491ba1ae","responseTime":50,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"e43436b1adf47ac9b55b3f606e1fa099"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e43436b1adf47ac9b55b3f606e1fa099","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e43436b1adf47ac9b55b3f606e1fa099"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.090605,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e43436b1adf47ac9b55b3f606e1fa099","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e43436b1adf47ac9b55b3f606e1fa099","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"4d00d5a1-1303-43e9-af5b-ac8215771a4e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.445792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e43436b1adf47ac9b55b3f606e1fa099","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e43436b1adf47ac9b55b3f606e1fa099"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e43436b1adf47ac9b55b3f606e1fa099"} device-1 | {"level":"info","message":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 17ms","method":"GET","requestID":"e43436b1adf47ac9b55b3f606e1fa099","responseTime":17,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"2cc93c2a04f33ddbf2872ebef3cda365"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"2cc93c2a04f33ddbf2872ebef3cda365","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2cc93c2a04f33ddbf2872ebef3cda365"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35549,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2cc93c2a04f33ddbf2872ebef3cda365","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2cc93c2a04f33ddbf2872ebef3cda365","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"48042646-ecbe-41e1-a3f4-ad1d54cb328b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.4713948} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2cc93c2a04f33ddbf2872ebef3cda365","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2cc93c2a04f33ddbf2872ebef3cda365"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cc93c2a04f33ddbf2872ebef3cda365"} device-1 | {"level":"info","message":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 18ms","method":"GET","requestID":"2cc93c2a04f33ddbf2872ebef3cda365","responseTime":18,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"269d5f19d933f6cff9b37eb89198d44f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"269d5f19d933f6cff9b37eb89198d44f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"269d5f19d933f6cff9b37eb89198d44f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.178938,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"269d5f19d933f6cff9b37eb89198d44f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"269d5f19d933f6cff9b37eb89198d44f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to run experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to book experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully booked experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169392,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.547314,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"ef40b153-0d06-45a0-812f-45a221b64907","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.5408366} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"3233cb5a-811b-4e79-bff7-53409fee3216","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.5432405} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 23ms","method":"GET","requestID":"4b871170-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 23ms","method":"GET","requestID":"4b875f90-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Setting up experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully locked booking for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to update booking for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully updated booking for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully set up experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4b939490-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully running experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148189,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.396224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"a029604c-1790-4881-a6c8-b8d2a61dcb59","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6207938} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f71462ef-267a-416b-92bf-f51991dfbe06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6213524} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"a964c936-c069-4718-8b2c-7ecbb2a93f82","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.622257} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.133205,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b939490-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","rebac_allow":false,"scope_allow":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":"4b939490-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 24ms","method":"GET","requestID":"4b92f850-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4b939490-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling 200 24ms","method":"POST","requestID":"4b939490-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 27ms","method":"GET","requestID":"4b934670-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F63eedd18-52aa-4728-8616-90b180bde695#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F63eedd18-52aa-4728-8616-90b180bde695","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"014bbc81-6061-4c62-8714-72deb1a001ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6353753} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d0aed8c-0026-4eb7-a3de-1008e20508a0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6356373} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4b97b340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"269d5f19d933f6cff9b37eb89198d44f","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4b980160-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2dc0217f-0510-435a-a2a3-d2f060a8d36a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6420732} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.164798,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b97b340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4b97b340-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21ceec14-a93c-4734-b621-9680acd31a57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6436937} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.94988,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b980160-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","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/63eedd18-52aa-4728-8616-90b180bde695","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"269d5f19d933f6cff9b37eb89198d44f"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4b980160-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"269d5f19d933f6cff9b37eb89198d44f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"269d5f19d933f6cff9b37eb89198d44f","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4b97b340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling 200 11ms","method":"POST","requestID":"4b97b340-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4b980160-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling 200 11ms","method":"POST","requestID":"4b980160-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"bca06756ad09fc7ee8cfb38f72d48031"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bca06756ad09fc7ee8cfb38f72d48031","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4b99fd30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bca06756ad09fc7ee8cfb38f72d48031"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817866,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.833808,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d9b4aa6-8334-4a1d-8a87-672fa59c66de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.656879} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bca06756ad09fc7ee8cfb38f72d48031","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bca06756ad09fc7ee8cfb38f72d48031","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b99fd30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","rebac_allow":false,"scope_allow":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":"4b99fd30-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4b99fd30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"5cf90b43-3fec-41bd-883b-ec88cb841cfb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6642096} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling 200 13ms","method":"POST","requestID":"4b99fd30-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bca06756ad09fc7ee8cfb38f72d48031","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bca06756ad09fc7ee8cfb38f72d48031"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bca06756ad09fc7ee8cfb38f72d48031"} device-1 | {"level":"info","message":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 17ms","method":"GET","requestID":"bca06756ad09fc7ee8cfb38f72d48031","responseTime":17,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.939778,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772041,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"6949823cf1e65ba420cd040e3c84982b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6949823cf1e65ba420cd040e3c84982b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.283687540Z"}]},"request_id":"51708e44-bd99-4342-9c9a-0f2803d56a88","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6756144} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6949823cf1e65ba420cd040e3c84982b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"0463fccf-ec3a-453f-be07-98f44c0b285b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.6767714} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.730471,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6949823cf1e65ba420cd040e3c84982b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6949823cf1e65ba420cd040e3c84982b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f? 200 15ms","method":"GET","requestID":"4b9c4720-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 14ms","method":"GET","requestID":"4b9c9540-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Building connection plan","requestID":"269d5f19d933f6cff9b37eb89198d44f"} 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":"57ff37c7-7129-4008-8461-54218bdc43f4"},{"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":"69770658-4dcf-47d3-ad52-f38510fb1d5d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"53fb1a09-aaf4-4ca6-a913-f007c17f7671"}]},"level":"info","message":"Built pairwise service configurations","requestID":"269d5f19d933f6cff9b37eb89198d44f"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"4b9f5460-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:13.336365193Z"}]},"request_id":"a36d3e73-d67f-4f1b-9d34-bf76ce13c026","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.686168} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"4b9f5460-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6949823cf1e65ba420cd040e3c84982b","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"4b9f5460-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271?id=a89c9af7-4329-4f11-a8ea-a9802b4d090a","ws://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271?id=0c9405ec-2855-4b2d-8d77-449ec2c411fb"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"269d5f19d933f6cff9b37eb89198d44f"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6949823cf1e65ba420cd040e3c84982b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6949823cf1e65ba420cd040e3c84982b"} device-1 | {"level":"info","message":"GET /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6? 200 13ms","method":"GET","requestID":"6949823cf1e65ba420cd040e3c84982b","responseTime":13,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.505486,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3894cc94-e592-48a0-887a-57f0958950b4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.7024684} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2381270-8f4d-44b9-aed7-220038e67f9b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.7027736} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a'","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a'","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} 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":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"4b9ff0a0-86cf-11ef-b00e-2fb111b9dda5"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4ba595f0-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\"","requestID":"4ba595f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4ba595f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4ba5e410-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0c9405ec-2855-4b2d-8d77-449ec2c411fb\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\"","requestID":"4ba5e410-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4ba5e410-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e4256ea5e4bbef51cdf7234f061258b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e4256ea5e4bbef51cdf7234f061258b","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"}}},"level":"info","message":"received a callback","requestID":"2e4256ea5e4bbef51cdf7234f061258b"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"2e4256ea5e4bbef51cdf7234f061258b","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e4256ea5e4bbef51cdf7234f061258b"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"269d5f19d933f6cff9b37eb89198d44f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4baa02c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aed87cf2-09d8-4fa0-bae2-802898165b25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.760331} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.596089,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4baa02c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4baa02c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4baa02c0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9aa73ecddd9047e36c4d204217b88f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c9aa73ecddd9047e36c4d204217b88f8","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling 200 15ms","method":"POST","requestID":"4baa02c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"}}},"level":"info","message":"received a callback","requestID":"c9aa73ecddd9047e36c4d204217b88f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bac9ad0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07492e72-3dd1-43ab-ada2-b54700d8f7da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.7778468} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4bad3710-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.762507,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bac9ad0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bac9ad0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8bda81b-07df-4782-92d2-8c0c68d1690a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e474dbda-c837-4d64-8516-3a7367177f31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.7828493} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.294635,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bad3710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bac9ad0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling 200 11ms","method":"POST","requestID":"4bac9ad0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bad3710-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4bad3710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a 200 9ms","method":"GET","requestID":"4bad3710-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"c9aa73ecddd9047e36c4d204217b88f8","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"c9aa73ecddd9047e36c4d204217b88f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bb06b60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb1419fc-5293-466c-a6a4-a26a645382b4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.8024735} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.267592,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bb06b60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bb06b60-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bb06b60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling 200 8ms","method":"POST","requestID":"4bb06b60-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bb1f200-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b7fe342-1297-40dd-88d9-ee7dfdf64fc7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.8128014} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.296866,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bb1f200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bb1f200-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bb1f200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling 200 8ms","method":"POST","requestID":"4bb1f200-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"0b51fce66545202099d286bad58019e5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0b51fce66545202099d286bad58019e5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/63eedd18-52aa-4728-8616-90b180bde695","requestID":"0b51fce66545202099d286bad58019e5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.645666,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0b51fce66545202099d286bad58019e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b51fce66545202099d286bad58019e5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/63eedd18-52aa-4728-8616-90b180bde695","requestID":"0b51fce66545202099d286bad58019e5"} experiment-1 | {"level":"info","message":"GET /experiments/63eedd18-52aa-4728-8616-90b180bde695 200 9ms","method":"GET","requestID":"0b51fce66545202099d286bad58019e5","responseTime":9,"status":200,"url":"/experiments/63eedd18-52aa-4728-8616-90b180bde695"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/63eedd18-52aa-4728-8616-90b180bde695 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b51fce66545202099d286bad58019e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE","level":"info","message":"auth send jwt","requestID":"60f83b410394e5c949a124f8f22f91e2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"60f83b410394e5c949a124f8f22f91e2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/63eedd18-52aa-4728-8616-90b180bde695","requestID":"60f83b410394e5c949a124f8f22f91e2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.777914,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60f83b410394e5c949a124f8f22f91e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60f83b410394e5c949a124f8f22f91e2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Attempting to finish experiment","requestID":"60f83b410394e5c949a124f8f22f91e2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.568218,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541035,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNX0.IYFahkk_uIQ8jmPjqo6wyyKQi--LPdj3QA-XwfUzIKE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","device":"9627589c-a77d-4342-94c9-fdbbe3ad633f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cd5175b3-0f95-4da3-afca-0d57f7068271?id=0c9405ec-2855-4b2d-8d77-449ec2c411fb HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.148","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c26a547a446a605194f2ede9145e3e5a"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a","device":"a4826800-d84a-4d1e-b192-d6c803b3fde6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:17:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/cd5175b3-0f95-4da3-afca-0d57f7068271?id=a89c9af7-4329-4f11-a8ea-a9802b4d090a HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.149","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"edb3854faa8745f8bb98c4a6fb39d8b5"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0c9405ec-2855-4b2d-8d77-449ec2c411fb\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0c9405ec-2855-4b2d-8d77-449ec2c411fb\" from room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" in room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a89c9af7-4329-4f11-a8ea-a9802b4d090a\" from room \"http://localhost/rooms/cd5175b3-0f95-4da3-afca-0d57f7068271\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8bda81b-07df-4782-92d2-8c0c68d1690a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8bda81b-07df-4782-92d2-8c0c68d1690a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"e92ec8ec-c460-4df9-8b9a-185be64e7619","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.8797767} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1306d76dafacb608afbc8f076d0dcae1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1306d76dafacb608afbc8f076d0dcae1","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f23fb887-d0b5-41ce-b751-38c6f73f15d2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.8801112} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d916a80fb7264ef5b249658e1283e44f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"}}},"level":"info","message":"received a callback","requestID":"1306d76dafacb608afbc8f076d0dcae1"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d916a80fb7264ef5b249658e1283e44f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"}}},"level":"info","message":"received a callback","requestID":"d916a80fb7264ef5b249658e1283e44f"} device-1 | {"data":{"peerconnection":"b8bda81b-07df-4782-92d2-8c0c68d1690a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a 204 36ms","method":"DELETE","requestID":"4bba2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":204,"url":"/peerconnections/b8bda81b-07df-4782-92d2-8c0c68d1690a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/63eedd18-52aa-4728-8616-90b180bde695"},"level":"info","message":"Successfully finished experiment","requestID":"60f83b410394e5c949a124f8f22f91e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bc26cc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4826800-d84a-4d1e-b192-d6c803b3fde6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ab73db3-0ba2-45fa-9306-e1414bc8e8fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.9208205} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188897,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bc26cc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bc26cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bc26cc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling 200 7ms","method":"POST","requestID":"4bc26cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bc3f360-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F63eedd18-52aa-4728-8616-90b180bde695': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F63eedd18-52aa-4728-8616-90b180bde695","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"af715414-58fb-4308-8c1e-f6e2cda36401","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.928624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce114270-1d32-4c68-a98c-f2516490ca07","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.928819} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"60f83b410394e5c949a124f8f22f91e2","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9627589c-a77d-4342-94c9-fdbbe3ad633f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da49893d-78ba-40a5-9658-01387e2b80ad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541035.9314678} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.730116,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4bc3f360-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bc3f360-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bc3f360-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling 200 9ms","method":"POST","requestID":"4bc3f360-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/9627589c-a77d-4342-94c9-fdbbe3ad633f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/63eedd18-52aa-4728-8616-90b180bde695","requestID":"60f83b410394e5c949a124f8f22f91e2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/63eedd18-52aa-4728-8616-90b180bde695 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":"60f83b410394e5c949a124f8f22f91e2"} experiment-1 | {"level":"info","message":"DELETE /experiments/63eedd18-52aa-4728-8616-90b180bde695 204 156ms","method":"DELETE","requestID":"60f83b410394e5c949a124f8f22f91e2","responseTime":156,"status":204,"url":"/experiments/63eedd18-52aa-4728-8616-90b180bde695"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"1306d76dafacb608afbc8f076d0dcae1","responseTime":130,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"d916a80fb7264ef5b249658e1283e44f","responseTime":130,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNn0.vHZNpuikVnaoUb-o3IsszxuZCxvTmCoNs0qU6-4R_1Y","level":"info","message":"auth send jwt","requestID":"0847a1529412ea0e1ba0d15ee16f17dd"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"1306d76dafacb608afbc8f076d0dcae1"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"d916a80fb7264ef5b249658e1283e44f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0847a1529412ea0e1ba0d15ee16f17dd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.112428,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:16Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"0.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":"0f1a3940d5d0acdc28bf546fb91bf877"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"0.688","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8c778f1ce2f9fc83bdaa9444a6d37b49"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0847a1529412ea0e1ba0d15ee16f17dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541036,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNn0.vHZNpuikVnaoUb-o3IsszxuZCxvTmCoNs0qU6-4R_1Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","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/9627589c-a77d-4342-94c9-fdbbe3ad633f' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a4826800-d84a-4d1e-b192-d6c803b3fde6' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4bd20a47-2128-40fb-a0c5-9ff41992d733","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.0396547} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e570858-ce8c-4830-8fef-a13c21451e19","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.0445418} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"fcfc0025-64f8-4a8b-abed-642451659be1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.0546913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61043c13-0fab-4607-8acb-1cdcf0b2a69f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.0549371} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"3ba0d06d-522a-46f6-84ea-37d76db6127b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.0587556} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0847a1529412ea0e1ba0d15ee16f17dd"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0847a1529412ea0e1ba0d15ee16f17dd"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"0847a1529412ea0e1ba0d15ee16f17dd","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNn0.vHZNpuikVnaoUb-o3IsszxuZCxvTmCoNs0qU6-4R_1Y","level":"info","message":"auth send jwt","requestID":"b5bc16efd2171454f036913cef31ede7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b5bc16efd2171454f036913cef31ede7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b5bc16efd2171454f036913cef31ede7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.94299,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b5bc16efd2171454f036913cef31ede7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541036,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzNn0.vHZNpuikVnaoUb-o3IsszxuZCxvTmCoNs0qU6-4R_1Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b73c4fd2-e901-4d38-b3c1-bdaf14a7f235","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.089762} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"892cea74-c975-4fea-a009-ae250a24b560","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.094059} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2c6e2497-4879-4615-bbb7-ea3a72682db6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.1067383} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e167c8d6-1d97-4902-92ad-72e2658525ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.106863} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"ffd06c99-bfe8-4665-884d-c3f975095344","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541036.1113365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b5bc16efd2171454f036913cef31ede7"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"b5bc16efd2171454f036913cef31ede7","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b5bc16efd2171454f036913cef31ede7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"57d8104a1250c3005d31adf38840147f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"57d8104a1250c3005d31adf38840147f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/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":"57d8104a1250c3005d31adf38840147f"} device-1 | {"level":"info","message":"OPTIONS /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/websocket 200 1ms","method":"OPTIONS","requestID":"57d8104a1250c3005d31adf38840147f","responseTime":1,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3801b22cdf81988249dffee6f9c5dd7e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3801b22cdf81988249dffee6f9c5dd7e","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a503e3d9-2803-4851-adf4-211608bb658e/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":"3801b22cdf81988249dffee6f9c5dd7e"} device-1 | {"level":"info","message":"OPTIONS /devices/a503e3d9-2803-4851-adf4-211608bb658e/websocket 200 1ms","method":"OPTIONS","requestID":"3801b22cdf81988249dffee6f9c5dd7e","responseTime":1,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050634,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7d9fe4c40238b52f3f385ec0e3f67df7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"4d1b55a7775c871f3432edb62a8dc29d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d1b55a7775c871f3432edb62a8dc29d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4d1b55a7775c871f3432edb62a8dc29d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.120996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d1b55a7775c871f3432edb62a8dc29d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d1b55a7775c871f3432edb62a8dc29d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7"} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/websocket 200 23ms","method":"POST","requestID":"7d9fe4c40238b52f3f385ec0e3f67df7","responseTime":23,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/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":"7d9fe4c40238b52f3f385ec0e3f67df7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4d1b55a7775c871f3432edb62a8dc29d"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/websocket 200 23ms","method":"POST","requestID":"4d1b55a7775c871f3432edb62a8dc29d","responseTime":23,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/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":"4d1b55a7775c871f3432edb62a8dc29d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70fc09b5c6889d77312b097ea5ddaf18","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"70fc09b5c6889d77312b097ea5ddaf18","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"70fc09b5c6889d77312b097ea5ddaf18"} device-1 | {"level":"info","message":"OPTIONS /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 1ms","method":"OPTIONS","requestID":"70fc09b5c6889d77312b097ea5ddaf18","responseTime":1,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c72ed10ee64d6e8fe787f0432f9a6310","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c72ed10ee64d6e8fe787f0432f9a6310","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a503e3d9-2803-4851-adf4-211608bb658e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c72ed10ee64d6e8fe787f0432f9a6310"} device-1 | {"level":"info","message":"OPTIONS /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 1ms","method":"OPTIONS","requestID":"c72ed10ee64d6e8fe787f0432f9a6310","responseTime":1,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820699,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"19dada4df13fc80954915cf69dd1b1b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19dada4df13fc80954915cf69dd1b1b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19dada4df13fc80954915cf69dd1b1b8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"51f86ef6-1ce5-4846-a852-1885b34ebe93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.1418157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900744,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19dada4df13fc80954915cf69dd1b1b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19dada4df13fc80954915cf69dd1b1b8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bafaee0e-5f7d-4c83-9e02-40c52934a464","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.147862} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"1845d52b-ac7e-429c-a595-cf807f6bfd17","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.1522977} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19dada4df13fc80954915cf69dd1b1b8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e57a19d-b34d-4be6-8989-748306102855","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.157645} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19dada4df13fc80954915cf69dd1b1b8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"894d03b9-a383-463d-ba26-17f827af7b6f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.1667438} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585"} device-1 | {"level":"info","message":"PATCH /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 37ms","method":"PATCH","requestID":"f89cf70c94ad53d8e8a901a3ca5ed585","responseTime":37,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"176e9a40-d05a-434f-b27f-62ec803d8d89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.1776538} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19dada4df13fc80954915cf69dd1b1b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19dada4df13fc80954915cf69dd1b1b8"} device-1 | {"level":"info","message":"PATCH /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 40ms","method":"PATCH","requestID":"19dada4df13fc80954915cf69dd1b1b8","responseTime":40,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a503e3d9-2803-4851-adf4-211608bb658e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19dada4df13fc80954915cf69dd1b1b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"f88f7925fc10f405abfc76792f34ef32"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f88f7925fc10f405abfc76792f34ef32","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f88f7925fc10f405abfc76792f34ef32"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895471,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f88f7925fc10f405abfc76792f34ef32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f88f7925fc10f405abfc76792f34ef32","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"8f276a76-7523-436d-af17-f337681f6fc7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.200115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f88f7925fc10f405abfc76792f34ef32","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f88f7925fc10f405abfc76792f34ef32"} device-1 | {"level":"info","message":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 14ms","method":"GET","requestID":"f88f7925fc10f405abfc76792f34ef32","responseTime":14,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f88f7925fc10f405abfc76792f34ef32"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"3f86b163be018dcfafabdffecdf16b77"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3f86b163be018dcfafabdffecdf16b77","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3f86b163be018dcfafabdffecdf16b77"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216458,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3f86b163be018dcfafabdffecdf16b77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3f86b163be018dcfafabdffecdf16b77","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"7eefbf4c-4e1f-4396-958f-8400dc981d41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.220315} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3f86b163be018dcfafabdffecdf16b77","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3f86b163be018dcfafabdffecdf16b77"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f86b163be018dcfafabdffecdf16b77"} device-1 | {"level":"info","message":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 14ms","method":"GET","requestID":"3f86b163be018dcfafabdffecdf16b77","responseTime":14,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.904617,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to run experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to book experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully booked experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19783,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96087,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"e1651fee-6d45-41c1-bc11-e9d4e867f9b2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.272827} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"08150ddd-c812-46e5-90fc-2a5de497e3ea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.274282} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 13ms","method":"GET","requestID":"4d28b380-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 13ms","method":"GET","requestID":"4d28da90-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Setting up experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully locked booking for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to update booking for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully updated booking for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully set up experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d322960-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully running experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.70768,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.485915,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59ef7ff4-8313-417f-8429-fb304a2c409b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3318982} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.598745,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d322960-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","rebac_allow":false,"scope_allow":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":"4d322960-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"5b177faa-b5e7-49c4-bc53-3932b4c0a6fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.337093} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d322960-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"ffd25ffa-4545-44b4-a752-a2d9e7a6fafa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3400867} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling 200 15ms","method":"POST","requestID":"4d322960-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d34e880-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F44c716d2-4611-4e3a-ac93-99aaa9a117af#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F44c716d2-4611-4e3a-ac93-99aaa9a117af","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"10d31498-d483-48d6-bc0b-a9786c8b1b69","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3457294} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"205833d9-fc51-4079-bc09-bf00312f1f25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3460884} device-1 | {"level":"info","message":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 22ms","method":"GET","requestID":"4d320250-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} device-1 | {"level":"info","message":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 24ms","method":"GET","requestID":"4d31db40-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4105d5a6-b779-4a35-a44f-7d8a25da2f31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3489301} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092127,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d34e880-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","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":"4d35d2e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4d34e880-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d34e880-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling 200 10ms","method":"POST","requestID":"4d34e880-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"318eae6e-1209-41cc-93ef-eb16878d4455","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.360952} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 129ms","method":"POST","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c","responseTime":129,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.351697,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d35d2e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"4d35d2e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"53804e30ad4c8623ddaaeb3a33e192b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53804e30ad4c8623ddaaeb3a33e192b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d35d2e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling 200 16ms","method":"POST","requestID":"4d35d2e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53804e30ad4c8623ddaaeb3a33e192b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d389200-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702226,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53804e30ad4c8623ddaaeb3a33e192b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53804e30ad4c8623ddaaeb3a33e192b3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45a20bda-a39f-49ff-8672-929b06495591","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3724358} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573691,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d389200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d389200-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"765c1a63-995c-440c-98c2-f2075d22052d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3743427} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53804e30ad4c8623ddaaeb3a33e192b3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d389200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling 200 11ms","method":"POST","requestID":"4d389200-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53804e30ad4c8623ddaaeb3a33e192b3"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53804e30ad4c8623ddaaeb3a33e192b3"} device-1 | {"level":"info","message":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 14ms","method":"GET","requestID":"53804e30ad4c8623ddaaeb3a33e192b3","responseTime":14,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"40f731155bf287eb6a7e75f188757241"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40f731155bf287eb6a7e75f188757241","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673534,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40f731155bf287eb6a7e75f188757241"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649669,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611916,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"40f731155bf287eb6a7e75f188757241","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40f731155bf287eb6a7e75f188757241","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.054656800Z"}]},"request_id":"b2825c19-bf22-40a3-91eb-d83f0c872dc0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.390842} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"0af012c9-b010-4a94-97e0-6ba42a87c5f0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.3914907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:16.106714928Z"}]},"request_id":"4f98bd17-ef99-483e-becb-cb4ff82e780d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.394995} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"40f731155bf287eb6a7e75f188757241","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f? 200 16ms","method":"GET","requestID":"4d3ab4e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 16ms","method":"GET","requestID":"4d3adbf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Building connection plan","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} 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":"bba54819-72a5-4507-a7d0-1cc363901c76"},{"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":"d72ad5de-8ad6-40c9-bab1-cc033b9a6db8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5a13e21e-412f-4bf8-ba26-97f11ed412ab"}]},"level":"info","message":"Built pairwise service configurations","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40f731155bf287eb6a7e75f188757241"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40f731155bf287eb6a7e75f188757241"} device-1 | {"level":"info","message":"GET /devices/a503e3d9-2803-4851-adf4-211608bb658e? 200 14ms","method":"GET","requestID":"40f731155bf287eb6a7e75f188757241","responseTime":14,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"4d3d9b10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"4d3d9b10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"4d3d9b10-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92?id=8dbf5a6a-1649-4639-8c7f-7b04d82a5256","ws://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92?id=574a70b6-ce56-4fb6-8682-8526b4b5ce9d"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.885408,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d43fd4c4-dc4d-43e8-8915-b22d9ff970f5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.4162695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e569b580-c0b7-4708-b03e-1fd57051bf0e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.4165163} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06'","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06'","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} 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":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5","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":"4d3e1040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4d436770-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\"","requestID":"4d436770-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4d436770-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4d438e80-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8dbf5a6a-1649-4639-8c7f-7b04d82a5256\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\"","requestID":"4d438e80-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4d438e80-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"394e2dd204372075a3c37af701eca26e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"394e2dd204372075a3c37af701eca26e","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"}}},"level":"info","message":"received a callback","requestID":"394e2dd204372075a3c37af701eca26e"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"394e2dd204372075a3c37af701eca26e","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"394e2dd204372075a3c37af701eca26e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"99e0b169b91fa2f23f348e7e2b8d5b5c"} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d46c2d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5895a287-2fce-4aa7-aabb-444ea00f6a4a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.4657354} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451494,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d46c2d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d46c2d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d46c2d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling 200 19ms","method":"POST","requestID":"4d46c2d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71a29ddca02b6d3c3d99e8012a65fd53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"71a29ddca02b6d3c3d99e8012a65fd53","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d4a1e30-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"}}},"level":"info","message":"received a callback","requestID":"71a29ddca02b6d3c3d99e8012a65fd53"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a42ece2-7f0e-4bde-9517-2e7b0c378592","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.487165} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.415694,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4d4ae180-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d4a1e30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d4a1e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d4a1e30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling 200 8ms","method":"POST","requestID":"4d4a1e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fceef7d3b-c57a-4949-a2e4-ffac03438a06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2654920b-8137-4612-b459-83059e018db8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.491964} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.489424,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d4ae180-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","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":"4d4ae180-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4d4ae180-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06 200 7ms","method":"GET","requestID":"4d4ae180-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"71a29ddca02b6d3c3d99e8012a65fd53","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"71a29ddca02b6d3c3d99e8012a65fd53"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d4deec0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d58fda0-d8b4-4ad7-bee9-c9ff438e54fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.512933} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356825,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d4deec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d4deec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d4deec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling 200 8ms","method":"POST","requestID":"4d4deec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d4f7560-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee296fa1-e8de-4192-a36f-76574c6b7453","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.5226853} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434364,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d4f7560-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d4f7560-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d4f7560-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling 200 9ms","method":"POST","requestID":"4d4f7560-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"2e1da088900a11465da54457f6375f60"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2e1da088900a11465da54457f6375f60","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","requestID":"2e1da088900a11465da54457f6375f60"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.976569,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e1da088900a11465da54457f6375f60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e1da088900a11465da54457f6375f60","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","requestID":"2e1da088900a11465da54457f6375f60"} experiment-1 | {"level":"info","message":"GET /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af 200 10ms","method":"GET","requestID":"2e1da088900a11465da54457f6375f60","responseTime":10,"status":200,"url":"/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e1da088900a11465da54457f6375f60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.152719,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Attempting to finish experiment","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.806018,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","device":"a503e3d9-2803-4851-adf4-211608bb658e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06","device":"f7b6d249-a372-40f5-be28-dc5959c6de2f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92?id=8dbf5a6a-1649-4639-8c7f-7b04d82a5256 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.150","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1e497b49ece933b730c47b0637f562a"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92?id=574a70b6-ce56-4fb6-8682-8526b4b5ce9d HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.150","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6a95ddb62c42c0b45675b835ea130852"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"574a70b6-ce56-4fb6-8682-8526b4b5ce9d\" from room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8dbf5a6a-1649-4639-8c7f-7b04d82a5256\" in room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8dbf5a6a-1649-4639-8c7f-7b04d82a5256\" from room \"http://localhost/rooms/3ead2e14-d5c8-4f62-8600-3be7e8245f92\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e2236e67cf39d6a756d402d675cbc353","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fceef7d3b-c57a-4949-a2e4-ffac03438a06': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fceef7d3b-c57a-4949-a2e4-ffac03438a06","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"b1799694-4352-4017-8ae5-97ccf9cae4f5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.59296} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e2236e67cf39d6a756d402d675cbc353","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85f55d04-f13f-4f7f-86d3-b566920920d8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.593269} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e04ad5d0344f5e889e09e45ea07f9113","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e04ad5d0344f5e889e09e45ea07f9113","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"}}},"level":"info","message":"received a callback","requestID":"e2236e67cf39d6a756d402d675cbc353"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"}}},"level":"info","message":"received a callback","requestID":"e04ad5d0344f5e889e09e45ea07f9113"} device-1 | {"data":{"peerconnection":"ceef7d3b-c57a-4949-a2e4-ffac03438a06","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06 204 40ms","method":"DELETE","requestID":"4d587610-86cf-11ef-b00e-2fb111b9dda5","responseTime":40,"status":204,"url":"/peerconnections/ceef7d3b-c57a-4949-a2e4-ffac03438a06"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"},"level":"info","message":"Successfully finished experiment","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d61ebf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b6d249-a372-40f5-be28-dc5959c6de2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c8f26c9-4cdf-463b-89ac-5a3012173c53","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.6435971} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F44c716d2-4611-4e3a-ac93-99aaa9a117af': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F44c716d2-4611-4e3a-ac93-99aaa9a117af","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"95fc73c7-7c7b-47ef-880d-fa0d74e8ffa7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.6436925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa56d725-e8ed-4205-a517-e5a04ca18439","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.644084} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.424398,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d61ebf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d61ebf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d61ebf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling 200 9ms","method":"POST","requestID":"4d61ebf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d6399a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa503e3d9-2803-4851-adf4-211608bb658e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40bdbe60-1b56-48b2-980a-f66248b21055","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.6544852} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.469588,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d6399a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a503e3d9-2803-4851-adf4-211608bb658e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d6399a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d6399a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling 200 8ms","method":"POST","requestID":"4d6399a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a503e3d9-2803-4851-adf4-211608bb658e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f"} experiment-1 | {"level":"info","message":"DELETE /experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af 204 136ms","method":"DELETE","requestID":"d6960a5dce385ab0ef1b3c74fb9d1c8f","responseTime":136,"status":204,"url":"/experiments/44c716d2-4611-4e3a-ac93-99aaa9a117af"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"e2236e67cf39d6a756d402d675cbc353","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"e2236e67cf39d6a756d402d675cbc353"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"e04ad5d0344f5e889e09e45ea07f9113","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"e04ad5d0344f5e889e09e45ea07f9113"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"9c9cc356304416eabdd9f41c3d3e95cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9c9cc356304416eabdd9f41c3d3e95cf"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.067052,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9c9cc356304416eabdd9f41c3d3e95cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"0.614","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8d3c54cf350c2823bdae32a8769c6401"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"0.609","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c373ff6c3cc6f04d5af14aa9604675ce"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f7b6d249-a372-40f5-be28-dc5959c6de2f' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"756646a1-3d35-44d6-875b-27b407b45efe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7373235} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dcc470b6-1c4d-467c-b730-374db9cb9dad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7412841} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","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/a503e3d9-2803-4851-adf4-211608bb658e' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"bb86ea93-920f-4c13-ae9b-8569473aa68e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.753724} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"469d57ab-f063-4c7e-9443-ba66d18ee5c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7538514} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"4e2a0105-22d1-403f-a670-5fb4ea52ba0a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7576256} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9c9cc356304416eabdd9f41c3d3e95cf"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c9cc356304416eabdd9f41c3d3e95cf"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"9c9cc356304416eabdd9f41c3d3e95cf","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw","level":"info","message":"auth send jwt","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.713222,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541038,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOH0.-XZNGndRTQ7MKYgk4obRZwyxZdb1JWzijjpT78o-igw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"54eb7413-2016-4f4b-ab44-6c518feb44d1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7841983} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee1a6e9f-e7fd-4aaf-93c0-5ed1a9204939","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7878432} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1a3143d4-5388-4d77-9a4b-e347b7291753","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7987874} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02f9a6bd-9999-4ce6-af36-6f492d94f84b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.7988958} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"a8cc3871-1c1c-4e36-bb25-473accb5f94b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541038.8022804} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a"} gateway-1 | {"time_local":"10/Oct/2024:06:17:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"0016b6c66e6bb2544d2a47e6a44eca3a","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOX0.P7dFd1D5BFDl5fYR8GdqFMwjYpS9H_FVnRrduaXuxK0","level":"info","message":"auth send jwt","requestID":"19a8ecd26fb293dd51573b6528290fc4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19a8ecd26fb293dd51573b6528290fc4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19a8ecd26fb293dd51573b6528290fc4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986352,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"19a8ecd26fb293dd51573b6528290fc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541039,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOX0.P7dFd1D5BFDl5fYR8GdqFMwjYpS9H_FVnRrduaXuxK0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"19a8ecd26fb293dd51573b6528290fc4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"635517fe-98f9-4329-b519-da0b04a0c6f8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541039.301405} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19a8ecd26fb293dd51573b6528290fc4","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de349f8c-7ba8-458d-906b-82a6f880225b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541039.3065453} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19a8ecd26fb293dd51573b6528290fc4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"1b5a01b1-474b-450e-a36e-3a546c558d5f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541039.3200948} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19a8ecd26fb293dd51573b6528290fc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19a8ecd26fb293dd51573b6528290fc4"} gateway-1 | {"time_local":"10/Oct/2024:06:17:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a3286e03-c283-4c53-b052-a431e077f37e HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"19a8ecd26fb293dd51573b6528290fc4"} device-1 | {"level":"info","message":"PATCH /devices/a3286e03-c283-4c53-b052-a431e077f37e 200 33ms","method":"PATCH","requestID":"19a8ecd26fb293dd51573b6528290fc4","responseTime":33,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOX0.P7dFd1D5BFDl5fYR8GdqFMwjYpS9H_FVnRrduaXuxK0","level":"info","message":"auth send jwt","requestID":"0c18bdf4e2245baf446d12fdffe6654b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0c18bdf4e2245baf446d12fdffe6654b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c18bdf4e2245baf446d12fdffe6654b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.847302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0c18bdf4e2245baf446d12fdffe6654b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541039,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTAzOX0.P7dFd1D5BFDl5fYR8GdqFMwjYpS9H_FVnRrduaXuxK0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c18bdf4e2245baf446d12fdffe6654b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c18bdf4e2245baf446d12fdffe6654b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0c18bdf4e2245baf446d12fdffe6654b"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/websocket 200 19ms","method":"POST","requestID":"0c18bdf4e2245baf446d12fdffe6654b","responseTime":19,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"14ad021bfadf31d3e253e57ceece63a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"14ad021bfadf31d3e253e57ceece63a1","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/9dae7acf-8606-489e-9102-5071ab394d62/websocket 200 1ms","method":"OPTIONS","requestID":"14ad021bfadf31d3e253e57ceece63a1","responseTime":1,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9dae7acf-8606-489e-9102-5071ab394d62/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":"14ad021bfadf31d3e253e57ceece63a1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc","level":"info","message":"auth send jwt","requestID":"69e63d698b6de75e03cb8d23d7b539e5"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"69e63d698b6de75e03cb8d23d7b539e5","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"69e63d698b6de75e03cb8d23d7b539e5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291638,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"69e63d698b6de75e03cb8d23d7b539e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"69e63d698b6de75e03cb8d23d7b539e5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"69e63d698b6de75e03cb8d23d7b539e5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/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":"69e63d698b6de75e03cb8d23d7b539e5"} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/websocket 200 22ms","method":"POST","requestID":"69e63d698b6de75e03cb8d23d7b539e5","responseTime":22,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f6c5ef1ab319627b2fa51202885d9ab5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f6c5ef1ab319627b2fa51202885d9ab5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9dae7acf-8606-489e-9102-5071ab394d62? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f6c5ef1ab319627b2fa51202885d9ab5"} device-1 | {"level":"info","message":"OPTIONS /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 1ms","method":"OPTIONS","requestID":"f6c5ef1ab319627b2fa51202885d9ab5","responseTime":1,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc","level":"info","message":"auth send jwt","requestID":"b3890dad129be52bd55fa5f051eb8cc2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3890dad129be52bd55fa5f051eb8cc2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b3890dad129be52bd55fa5f051eb8cc2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.365362,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b3890dad129be52bd55fa5f051eb8cc2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3890dad129be52bd55fa5f051eb8cc2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"0e55321a-3b5d-41df-932d-02448d1ffe67","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541040.9141493} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3890dad129be52bd55fa5f051eb8cc2","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"435b2053-faa6-4d7b-b950-d7c653fa5802","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541040.9212122} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b3890dad129be52bd55fa5f051eb8cc2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"fc8c2acb-ac1f-4d74-a87b-5b7e31efa11f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541040.933704} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3890dad129be52bd55fa5f051eb8cc2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b3890dad129be52bd55fa5f051eb8cc2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9dae7acf-8606-489e-9102-5071ab394d62? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b3890dad129be52bd55fa5f051eb8cc2"} device-1 | {"level":"info","message":"PATCH /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 36ms","method":"PATCH","requestID":"b3890dad129be52bd55fa5f051eb8cc2","responseTime":36,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc","level":"info","message":"auth send jwt","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868618,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"43a7ffe4-b143-4aa6-a3ae-429220500c4d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541040.9598308} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3"} device-1 | {"level":"info","message":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 15ms","method":"GET","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3","responseTime":15,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ce10a2ee8b7199a3b3aedc9e505cce3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc","level":"info","message":"auth send jwt","requestID":"c2d0487946685c1cfa330428dc8d5c8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c2d0487946685c1cfa330428dc8d5c8b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2d0487946685c1cfa330428dc8d5c8b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166232,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c2d0487946685c1cfa330428dc8d5c8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2d0487946685c1cfa330428dc8d5c8b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"e3f03b24-8c24-4cc5-be78-56a833409c1d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541040.9805655} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c2d0487946685c1cfa330428dc8d5c8b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2d0487946685c1cfa330428dc8d5c8b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c2d0487946685c1cfa330428dc8d5c8b"} device-1 | {"level":"info","message":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? 200 14ms","method":"GET","requestID":"c2d0487946685c1cfa330428dc8d5c8b","responseTime":14,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc","level":"info","message":"auth send jwt","requestID":"56990fd773763ccb34d977d2f867bd1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"56990fd773763ccb34d977d2f867bd1a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"56990fd773763ccb34d977d2f867bd1a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.936643,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56990fd773763ccb34d977d2f867bd1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"56990fd773763ccb34d977d2f867bd1a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to run experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to book experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully booked experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728313,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.6846,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"fcd72d5d-c2e1-45b8-b5c9-98568818651a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.044951} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"ee8ece7b-223d-4b89-a8cd-c91a9421f1ff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.0463948} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 20ms","method":"GET","requestID":"4ecf85b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? 200 20ms","method":"GET","requestID":"4ecfacc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Setting up experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully set up experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4eda5b20-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully running experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236211,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.859443,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.027639,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21a2a165-845e-494f-ac3e-f4541ba0ecf1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1115794} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4eda5b20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4eda5b20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"67d742ae-7010-4ffc-9ca6-ddaa97bd7162","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1150243} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4eda5b20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"a1dd19e8-33ba-4c37-aa5c-038728d2e803","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1187723} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling 200 13ms","method":"POST","requestID":"4eda5b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4edca510-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 23ms","method":"GET","requestID":"4ed9e5f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? 200 22ms","method":"GET","requestID":"4eda3410-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1809e336-668a-4adb-a9b9-040b7f0e9e7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1277778} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.130205,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4edca510-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","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":"4edddd90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4edca510-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd100da55-f068-469e-949f-26641e67af3a#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd100da55-f068-469e-949f-26641e67af3a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"6dc1b790-75cb-49e5-9e6b-38c6d7941321","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.128677} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aec8f8de-316f-44bc-8eca-a453dd69bf06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.129148} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"56990fd773763ccb34d977d2f867bd1a","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4edca510-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling 200 12ms","method":"POST","requestID":"4edca510-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cbcaa1c-3c75-4f51-939a-c3fcba9f5e85","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.135329} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.591943,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4edddd90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4edddd90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"56990fd773763ccb34d977d2f867bd1a"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56990fd773763ccb34d977d2f867bd1a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"56990fd773763ccb34d977d2f867bd1a","responseTime":148,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4edddd90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling 200 12ms","method":"POST","requestID":"4edddd90-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ee00070-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"f7ed280618e1f36258ddc4d696cb9107"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7ed280618e1f36258ddc4d696cb9107","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7ed280618e1f36258ddc4d696cb9107"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"852782c3-78ef-43c2-bfd2-1f92f8f23f13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.148524} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.703905,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ee00070-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ee00070-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677598,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f7ed280618e1f36258ddc4d696cb9107","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7ed280618e1f36258ddc4d696cb9107","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ee00070-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling 200 11ms","method":"POST","requestID":"4ee00070-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"22462ac8-63f7-4f1e-98f9-d4364e972375","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1552649} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7ed280618e1f36258ddc4d696cb9107","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7ed280618e1f36258ddc4d696cb9107"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7ed280618e1f36258ddc4d696cb9107"} device-1 | {"level":"info","message":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 14ms","method":"GET","requestID":"f7ed280618e1f36258ddc4d696cb9107","responseTime":14,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.787409,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794612,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.753695965Z"}]},"request_id":"0814fd6a-6619-42a9-b8fe-86e549d214be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.165676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"dc8c5711-f35a-4e9b-9a81-30ca06fd8074","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1669567} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663027,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} device-1 | {"level":"info","message":"GET /devices/9dae7acf-8606-489e-9102-5071ab394d62? 200 13ms","method":"GET","requestID":"4ee22350-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? 200 15ms","method":"GET","requestID":"4ee24a60-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:18.798760994Z"}]},"request_id":"2d51bb9e-fd5b-4c19-88a7-17cac091ba81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1738954} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Building connection plan","requestID":"56990fd773763ccb34d977d2f867bd1a"} 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":"f4d31e7c-222e-4e05-9ab1-81461d55baec"},{"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":"57df64f3-e7a6-45fb-8637-a762235f2407"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e1d725fb-8ac3-44e5-a9d3-25e583971c38"}]},"level":"info","message":"Built pairwise service configurations","requestID":"56990fd773763ccb34d977d2f867bd1a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"4ee50980-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"4ee50980-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5"} device-1 | {"level":"info","message":"GET /devices/a3286e03-c283-4c53-b052-a431e077f37e? 200 12ms","method":"GET","requestID":"a31b5f49c2e0fbe6a4bb97ff72be52a5","responseTime":12,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"4ee50980-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25?id=58070c7c-b58b-45bb-a8d6-a577c1d4f0cb","ws://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25?id=ec1436af-da7c-4f65-9d21-16bdd91b9405"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"56990fd773763ccb34d977d2f867bd1a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.95797,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541040,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MH0.NGVuvk1hQd6_I-swBFvPiA5xNaSuNp9EEjSdFFo4bJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"cfe0fa5c-0cda-4a1a-b1d5-7837bfa4f694","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.191055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7c38ff4-1cac-454b-a6e7-54ea26c92f02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.1912353} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6'","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6'","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} 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":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"4ee57eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4eeb2400-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\"","requestID":"4eeb2400-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4eeb2400-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"4eeb7220-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec1436af-da7c-4f65-9d21-16bdd91b9405\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\"","requestID":"4eeb7220-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"4eeb7220-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c524fe52123ca49fb397e47d12d44b0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c524fe52123ca49fb397e47d12d44b0a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"}}},"level":"info","message":"received a callback","requestID":"c524fe52123ca49fb397e47d12d44b0a"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"c524fe52123ca49fb397e47d12d44b0a","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"c524fe52123ca49fb397e47d12d44b0a"} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"56990fd773763ccb34d977d2f867bd1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ef05420-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01dcb852-2c3e-4e62-8d80-00b322cf6feb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.256219} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.619948,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ef05420-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4ef05420-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ef05420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling 200 15ms","method":"POST","requestID":"4ef05420-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f97bb38a94db7fdbdcbbbac0fed65dc7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f97bb38a94db7fdbdcbbbac0fed65dc7","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ef2ec30-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"}}},"level":"info","message":"received a callback","requestID":"f97bb38a94db7fdbdcbbbac0fed65dc7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39a2c103-2038-4a0e-8808-7b6419dc0499","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.2718077} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912619,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ef2ec30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4ef3d690-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ef2ec30-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ef2ec30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling 200 10ms","method":"POST","requestID":"4ef2ec30-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe86dbc94-7263-431b-a31a-e4c05425dba6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e3b150b-709f-45f8-b618-099e9fada477","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.277548} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.611888,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ef3d690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6","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":"4ef3d690-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4ef3d690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6 200 8ms","method":"GET","requestID":"4ef3d690-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"f97bb38a94db7fdbdcbbbac0fed65dc7","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"f97bb38a94db7fdbdcbbbac0fed65dc7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ef78010-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f9361ac-9890-4deb-8145-628526ae3030","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.3029747} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.863905,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ef78010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ef78010-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ef78010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling 200 10ms","method":"POST","requestID":"4ef78010-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ef954d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de29de9d-1bd5-41e0-b60d-df98264841fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.3132432} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.740576,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ef954d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ef954d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ef954d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling 200 8ms","method":"POST","requestID":"4ef954d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"64e293d54e288a5885e569dd65507a91"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"64e293d54e288a5885e569dd65507a91","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d100da55-f068-469e-949f-26641e67af3a","requestID":"64e293d54e288a5885e569dd65507a91"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.136913,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64e293d54e288a5885e569dd65507a91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64e293d54e288a5885e569dd65507a91","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d100da55-f068-469e-949f-26641e67af3a","requestID":"64e293d54e288a5885e569dd65507a91"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d100da55-f068-469e-949f-26641e67af3a HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64e293d54e288a5885e569dd65507a91"} experiment-1 | {"level":"info","message":"GET /experiments/d100da55-f068-469e-949f-26641e67af3a 200 15ms","method":"GET","requestID":"64e293d54e288a5885e569dd65507a91","responseTime":15,"status":200,"url":"/experiments/d100da55-f068-469e-949f-26641e67af3a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"694e0e44d54c8da1a34a5c3165b565be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"694e0e44d54c8da1a34a5c3165b565be","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d100da55-f068-469e-949f-26641e67af3a","requestID":"694e0e44d54c8da1a34a5c3165b565be"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.299107,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"694e0e44d54c8da1a34a5c3165b565be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"694e0e44d54c8da1a34a5c3165b565be","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Attempting to finish experiment","requestID":"694e0e44d54c8da1a34a5c3165b565be"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.232678,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1ebf8331-a332-41b5-8615-cebb28971b25?id=58070c7c-b58b-45bb-a8d6-a577c1d4f0cb HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.165","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"59e5c20c1d5a3fa77daaa17eb4448d2d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"58070c7c-b58b-45bb-a8d6-a577c1d4f0cb\" from room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1ebf8331-a332-41b5-8615-cebb28971b25?id=ec1436af-da7c-4f65-9d21-16bdd91b9405 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.164","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82e73e45828632c31afefe00e78cb8a2"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ec1436af-da7c-4f65-9d21-16bdd91b9405\" in room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ec1436af-da7c-4f65-9d21-16bdd91b9405\" from room \"http://localhost/rooms/1ebf8331-a332-41b5-8615-cebb28971b25\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6","device":"9dae7acf-8606-489e-9102-5071ab394d62","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c29efb25df96cc96b974651e65eab1d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c29efb25df96cc96b974651e65eab1d8","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe86dbc94-7263-431b-a31a-e4c05425dba6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe86dbc94-7263-431b-a31a-e4c05425dba6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5b1eb630-e4a2-4a8a-9bbd-9627beaab315","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.3855174} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f0f5d2219dfde2f5d622387d500afe9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"}}},"level":"info","message":"received a callback","requestID":"c29efb25df96cc96b974651e65eab1d8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1f0f5d2219dfde2f5d622387d500afe9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c2888d8-87e7-4c12-8c28-5a832a85b98c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.3858824} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"}}},"level":"info","message":"received a callback","requestID":"1f0f5d2219dfde2f5d622387d500afe9"} device-1 | {"data":{"peerconnection":"e86dbc94-7263-431b-a31a-e4c05425dba6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6 204 40ms","method":"DELETE","requestID":"4f020760-86cf-11ef-b00e-2fb111b9dda5","responseTime":40,"status":204,"url":"/peerconnections/e86dbc94-7263-431b-a31a-e4c05425dba6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d100da55-f068-469e-949f-26641e67af3a"},"level":"info","message":"Successfully finished experiment","requestID":"694e0e44d54c8da1a34a5c3165b565be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f0ae100-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3286e03-c283-4c53-b052-a431e077f37e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d238eae-4003-47d6-8460-704d27b9b99e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.4302967} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.691512,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4f0ae100-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f0ae100-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f0ae100-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling 200 12ms","method":"POST","requestID":"4f0ae100-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/a3286e03-c283-4c53-b052-a431e077f37e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f0d03e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd100da55-f068-469e-949f-26641e67af3a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd100da55-f068-469e-949f-26641e67af3a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d4c14fa9-c156-479d-9080-38214e95a895","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.4407375} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6f63652-9772-4aee-88c7-0cfb2b1b4a1b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.4411006} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"694e0e44d54c8da1a34a5c3165b565be","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9dae7acf-8606-489e-9102-5071ab394d62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a68c9e65-0fe3-463a-a7dc-9fb584d0315a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.4498093} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.644521,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4f0d03e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9dae7acf-8606-489e-9102-5071ab394d62","object_type":"device","rebac_allow":false,"scope_allow":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":"4f0d03e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f0d03e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling 200 17ms","method":"POST","requestID":"4f0d03e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/9dae7acf-8606-489e-9102-5071ab394d62/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d100da55-f068-469e-949f-26641e67af3a","requestID":"694e0e44d54c8da1a34a5c3165b565be"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d100da55-f068-469e-949f-26641e67af3a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"694e0e44d54c8da1a34a5c3165b565be"} experiment-1 | {"level":"info","message":"DELETE /experiments/d100da55-f068-469e-949f-26641e67af3a 204 160ms","method":"DELETE","requestID":"694e0e44d54c8da1a34a5c3165b565be","responseTime":160,"status":204,"url":"/experiments/d100da55-f068-469e-949f-26641e67af3a"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"2.162","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"068f418688652ed03148eed017fe2866"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"c29efb25df96cc96b974651e65eab1d8","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"c29efb25df96cc96b974651e65eab1d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"1f0f5d2219dfde2f5d622387d500afe9","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"1f0f5d2219dfde2f5d622387d500afe9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"31427be9528e1abb86d47c8e79dae217"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"31427be9528e1abb86d47c8e79dae217","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"31427be9528e1abb86d47c8e79dae217"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.659","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cab0ae136fd2b986d70abbe89b77fe4a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a3286e03-c283-4c53-b052-a431e077f37e' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.019731,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"31427be9528e1abb86d47c8e79dae217","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","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/9dae7acf-8606-489e-9102-5071ab394d62' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f2189e1d-6e24-407c-bb68-c2c3471c1270","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5390697} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1de0035d-9cf2-44da-99c6-484027df9a6b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5446053} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ef5af2dd-f3ca-4a20-861b-be4ab167357e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5568843} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"034de017-261b-4f79-8c0d-e94ac7655255","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5571458} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"98db8972-508d-4eea-998a-61c6a1055cee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5613244} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"31427be9528e1abb86d47c8e79dae217"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31427be9528e1abb86d47c8e79dae217"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"31427be9528e1abb86d47c8e79dae217","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ","level":"info","message":"auth send jwt","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.689364,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541041,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0MX0.ka8z8aaVipFkT5AS15X6g4iR-43wAG1HBZJojHZYoYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"734dda06-43b3-4580-a75d-a908f5823943","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5894098} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d1139b3-f5da-4a77-bd14-6a9919ef46c6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.5938704} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f45e380e-19cc-4e52-8fc2-8a55a912aaa7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.6052067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a92ad84c-1c2f-40ca-8bc1-fd7fbdd07ab4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.6054385} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"88c01290-ee59-4f5f-ab0c-4b4a11ddab77","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541041.6094012} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02"} gateway-1 | {"time_local":"10/Oct/2024:06:17:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"3fe71b6bd7f1d15f3b6270f483ba3d02","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Mn0.Ndgws-jYW711TR7O_hCoMZicYiMRjp96NNiGj9obNVE","level":"info","message":"auth send jwt","requestID":"25b3c6c14a3cb76d92313f60247f014c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"25b3c6c14a3cb76d92313f60247f014c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"25b3c6c14a3cb76d92313f60247f014c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219597,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25b3c6c14a3cb76d92313f60247f014c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541042,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Mn0.Ndgws-jYW711TR7O_hCoMZicYiMRjp96NNiGj9obNVE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25b3c6c14a3cb76d92313f60247f014c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"16251e60-d7c3-4512-80ea-90d56ff6fcb5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541042.0980635} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25b3c6c14a3cb76d92313f60247f014c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab176b37-c8f4-4e9a-a871-8092b4dbbf7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541042.1042237} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"25b3c6c14a3cb76d92313f60247f014c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"df31bd2a-1fef-4fda-803d-34b12618174f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541042.1174612} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25b3c6c14a3cb76d92313f60247f014c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"25b3c6c14a3cb76d92313f60247f014c"} device-1 | {"level":"info","message":"PATCH /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455 200 33ms","method":"PATCH","requestID":"25b3c6c14a3cb76d92313f60247f014c","responseTime":33,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"} gateway-1 | {"time_local":"10/Oct/2024:06:17:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"25b3c6c14a3cb76d92313f60247f014c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Mn0.Ndgws-jYW711TR7O_hCoMZicYiMRjp96NNiGj9obNVE","level":"info","message":"auth send jwt","requestID":"1791836b479e5f2834f5618b5a9c9473"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1791836b479e5f2834f5618b5a9c9473","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1791836b479e5f2834f5618b5a9c9473"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.108735,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1791836b479e5f2834f5618b5a9c9473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541042,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Mn0.Ndgws-jYW711TR7O_hCoMZicYiMRjp96NNiGj9obNVE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1791836b479e5f2834f5618b5a9c9473","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1791836b479e5f2834f5618b5a9c9473"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/websocket 200 21ms","method":"POST","requestID":"1791836b479e5f2834f5618b5a9c9473","responseTime":21,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1791836b479e5f2834f5618b5a9c9473"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d77161710fe2ae25ad9918fc6c068533","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d77161710fe2ae25ad9918fc6c068533","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/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":"d77161710fe2ae25ad9918fc6c068533"} device-1 | {"level":"info","message":"OPTIONS /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/websocket 200 0ms","method":"OPTIONS","requestID":"d77161710fe2ae25ad9918fc6c068533","responseTime":0,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"e328ab54eea0e1e17aca3f9b0a23d210"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e328ab54eea0e1e17aca3f9b0a23d210","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e328ab54eea0e1e17aca3f9b0a23d210"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.184001,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e328ab54eea0e1e17aca3f9b0a23d210","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e328ab54eea0e1e17aca3f9b0a23d210","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e328ab54eea0e1e17aca3f9b0a23d210"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/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":"e328ab54eea0e1e17aca3f9b0a23d210"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/websocket 200 20ms","method":"POST","requestID":"e328ab54eea0e1e17aca3f9b0a23d210","responseTime":20,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6070dc4cdd9d8525d44dd4a8a08988e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c6070dc4cdd9d8525d44dd4a8a08988e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c6070dc4cdd9d8525d44dd4a8a08988e"} device-1 | {"level":"info","message":"OPTIONS /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 2ms","method":"OPTIONS","requestID":"c6070dc4cdd9d8525d44dd4a8a08988e","responseTime":2,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"45665d46a37e22f6bec539446ed8a2d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45665d46a37e22f6bec539446ed8a2d3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"45665d46a37e22f6bec539446ed8a2d3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.16939,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"45665d46a37e22f6bec539446ed8a2d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45665d46a37e22f6bec539446ed8a2d3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"76a0ba0c-b0ee-4769-9b0c-788c5e806ef6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.7140212} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45665d46a37e22f6bec539446ed8a2d3","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce871dd3-9804-4409-8a85-0c105060fafc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.7214167} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"45665d46a37e22f6bec539446ed8a2d3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"eecfe401-2eff-47cd-9295-509fe636c891","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.7330766} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45665d46a37e22f6bec539446ed8a2d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"45665d46a37e22f6bec539446ed8a2d3"} device-1 | {"level":"info","message":"PATCH /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 36ms","method":"PATCH","requestID":"45665d46a37e22f6bec539446ed8a2d3","responseTime":36,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"45665d46a37e22f6bec539446ed8a2d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298674,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7109a4f49ddb5dfc86dc1ebc520c6644","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"acf47d8a-5dbc-4834-82ab-61d1e95498e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.7613223} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644"} device-1 | {"level":"info","message":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 16ms","method":"GET","requestID":"7109a4f49ddb5dfc86dc1ebc520c6644","responseTime":16,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.241461,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"7577b014-1a8a-4da9-b211-7296dcac6734","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.7856693} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d"} device-1 | {"level":"info","message":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? 200 17ms","method":"GET","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d","responseTime":17,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d2e2a6913e07cd436d47fc8b8f43fc1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"4959f771df577e5b7888f4a92311951e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4959f771df577e5b7888f4a92311951e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4959f771df577e5b7888f4a92311951e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.144418,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4959f771df577e5b7888f4a92311951e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4959f771df577e5b7888f4a92311951e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to run experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to book experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully booked experiment","requestID":"4959f771df577e5b7888f4a92311951e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.614336,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645461,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"9b3ca6e9-2ac2-436e-9bb6-dfe03d346dc3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.84773} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"ca9948d1-9372-401e-a97a-a35f5941ade6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.849652} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 20ms","method":"GET","requestID":"507b60f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? 200 20ms","method":"GET","requestID":"507baf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Setting up experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully set up experiment","requestID":"4959f771df577e5b7888f4a92311951e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"508747d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully running experiment","requestID":"4959f771df577e5b7888f4a92311951e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.460695,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287714,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50728","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.488228,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a1b6521-8c5a-4c5e-9fcd-265f59999571","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9262688} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"508747d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"508747d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"e6c2e04d-e4c9-4d18-8915-702803439a4a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9324431} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"6c693a23-904e-4e8d-a3f9-2294ee70a675","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9358926} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"508747d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling 200 22ms","method":"POST","requestID":"508747d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"508b1860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F40a9acbe-3f8c-4585-b37b-2a729dc87420#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F40a9acbe-3f8c-4585-b37b-2a729dc87420","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e33c3547-4aab-406e-801c-49b59bad7bf2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9439187} device-1 | {"level":"info","message":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 32ms","method":"GET","requestID":"5086ab90-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be5a27a7-0487-4d67-98ed-8638ca47bb1a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9444487} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} device-1 | {"level":"info","message":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? 200 32ms","method":"GET","requestID":"5086f9b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"4959f771df577e5b7888f4a92311951e","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05f4f1a9-59e7-491e-84bc-2c145a640dc0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9482503} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.698198,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"508b1860-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","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":"508c50e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"508b1860-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"508b1860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling 200 13ms","method":"POST","requestID":"508b1860-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c2bda73-8378-4246-bea0-24b4d375d243","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9568615} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.914676,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4959f771df577e5b7888f4a92311951e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"508c50e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"508c50e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4959f771df577e5b7888f4a92311951e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"4959f771df577e5b7888f4a92311951e","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"508c50e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling 200 12ms","method":"POST","requestID":"508c50e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"e90d414410938f6d738db2fc0140618e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"508e73c0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e90d414410938f6d738db2fc0140618e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e90d414410938f6d738db2fc0140618e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.052321,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b2b15da-ec9b-49d7-af81-ad738bd0511c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9712608} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e90d414410938f6d738db2fc0140618e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e90d414410938f6d738db2fc0140618e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.435828,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"508e73c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","rebac_allow":false,"scope_allow":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":"508e73c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"cd88f2ca-e356-4582-8887-64bb85e31be2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9777226} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"508e73c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling 200 14ms","method":"POST","requestID":"508e73c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e90d414410938f6d738db2fc0140618e","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e90d414410938f6d738db2fc0140618e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e90d414410938f6d738db2fc0140618e"} device-1 | {"level":"info","message":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 19ms","method":"GET","requestID":"e90d414410938f6d738db2fc0140618e","responseTime":19,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.097105,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU","level":"info","message":"auth send jwt","requestID":"ab6da9f9345d4737c0308e03170825c1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab6da9f9345d4737c0308e03170825c1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab6da9f9345d4737c0308e03170825c1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.556857373Z"}]},"request_id":"ad167e42-7b8f-40a7-b02a-1107447bcc0d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.990979} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"23247d48-b744-411d-adc3-103e45b1e8e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541043.9923162} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887291,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ab6da9f9345d4737c0308e03170825c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ab6da9f9345d4737c0308e03170825c1","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6a450c50-90e7-4804-ae17-a236ccb63c99? 200 19ms","method":"GET","requestID":"50910bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:21.605170967Z"}]},"request_id":"0144a31e-2dbe-4060-b43d-9a240390bd8c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.000983} device-1 | {"level":"info","message":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? 200 19ms","method":"GET","requestID":"509132e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Building connection plan","requestID":"4959f771df577e5b7888f4a92311951e"} 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":"38e27e59-db4c-49b0-874a-ea2fa1817310"},{"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":"7521ee2f-86df-4ef0-a4aa-26e6c9651075"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"880d338c-4b6e-4c96-9792-0da4c22d579b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4959f771df577e5b7888f4a92311951e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ab6da9f9345d4737c0308e03170825c1","responseTime":4,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"50946730-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"50946730-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab6da9f9345d4737c0308e03170825c1"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"50946730-86cf-11ef-a631-87f051e9b6e3","responseTime":2,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? 200 14ms","method":"GET","requestID":"ab6da9f9345d4737c0308e03170825c1","responseTime":14,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab6da9f9345d4737c0308e03170825c1"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741?id=cbce1f78-736c-4cd6-a8d9-226bec307978","ws://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741?id=78aa04cc-2317-48dc-99a8-ff71b7d25c41"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"4959f771df577e5b7888f4a92311951e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.030285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541043,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0M30.95l8nvdJ56gIvmxQtQ7Jr3PVa6cfEJIpIp7KxPZAdiU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c4e6cc70-2e97-4128-8693-5dff690dd311","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.0192242} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6aecc9a2-a71b-445d-9d2d-c7656c0e4b15","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.0192993} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234'","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234'","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"50950370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"509a3390-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\"","requestID":"509a3390-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"509a3390-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"509aa8c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"78aa04cc-2317-48dc-99a8-ff71b7d25c41\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\"","requestID":"509aa8c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"509aa8c0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1bba8f391baa25b1fa4c0d585a4a9617","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1bba8f391baa25b1fa4c0d585a4a9617","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"}}},"level":"info","message":"received a callback","requestID":"1bba8f391baa25b1fa4c0d585a4a9617"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"1bba8f391baa25b1fa4c0d585a4a9617","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"1bba8f391baa25b1fa4c0d585a4a9617"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4959f771df577e5b7888f4a92311951e"} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"509e2b30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"629fbe70-982d-4381-8a08-0d56d69b1a0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.071533} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.435649,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"509e2b30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"509e2b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"509e2b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling 200 23ms","method":"POST","requestID":"509e2b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5d4e1e3b3e44cf0580159a152400897","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d5d4e1e3b3e44cf0580159a152400897","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50a222d0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"}}},"level":"info","message":"received a callback","requestID":"d5d4e1e3b3e44cf0580159a152400897"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cece4a76-2f56-4865-8eb4-425581e0b0c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.0980787} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.637145,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"50a2e620-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50a222d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50a222d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50a222d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling 200 9ms","method":"POST","requestID":"50a222d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd531adac-5fca-43e6-9c25-b552a9ad9234","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77a3263a-f34f-4cd6-909d-acc5d9559923","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.1025298} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.305816,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50a2e620-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234","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":"50a2e620-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"50a2e620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234 200 7ms","method":"GET","requestID":"50a2e620-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"d5d4e1e3b3e44cf0580159a152400897","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"d5d4e1e3b3e44cf0580159a152400897"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50a66890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1e4efc4-0d57-4506-81d1-003e9f0febfe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.1259193} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.929803,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50a66890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50a66890-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50a66890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling 200 9ms","method":"POST","requestID":"50a66890-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50a81640-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f6003a2-6b25-4aed-84f6-64ab94d250e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.1360273} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.629443,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50a81640-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50a81640-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50a81640-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling 200 8ms","method":"POST","requestID":"50a81640-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"76591b9310dae237d864d0ac6064befa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76591b9310dae237d864d0ac6064befa","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","requestID":"76591b9310dae237d864d0ac6064befa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.910767,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76591b9310dae237d864d0ac6064befa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76591b9310dae237d864d0ac6064befa","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","requestID":"76591b9310dae237d864d0ac6064befa"} experiment-1 | {"level":"info","message":"GET /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420 200 10ms","method":"GET","requestID":"76591b9310dae237d864d0ac6064befa","responseTime":10,"status":200,"url":"/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76591b9310dae237d864d0ac6064befa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"2e3d6aad2d872ba82306b98ce79b5c73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2e3d6aad2d872ba82306b98ce79b5c73","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","requestID":"2e3d6aad2d872ba82306b98ce79b5c73"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.722528,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2e3d6aad2d872ba82306b98ce79b5c73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2e3d6aad2d872ba82306b98ce79b5c73","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Attempting to finish experiment","requestID":"2e3d6aad2d872ba82306b98ce79b5c73"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.767467,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5077929b-8e43-4afb-abff-2246e5601741?id=cbce1f78-736c-4cd6-a8d9-226bec307978 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.149","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7d23344e30592a02e7f8578ebbd87f45"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"cbce1f78-736c-4cd6-a8d9-226bec307978\" from room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5077929b-8e43-4afb-abff-2246e5601741?id=78aa04cc-2317-48dc-99a8-ff71b7d25c41 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.149","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4be39276ccc7a4ec172bbe6fe1aa2db1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"78aa04cc-2317-48dc-99a8-ff71b7d25c41\" in room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"78aa04cc-2317-48dc-99a8-ff71b7d25c41\" from room \"http://localhost/rooms/5077929b-8e43-4afb-abff-2246e5601741\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234","device":"6a450c50-90e7-4804-ae17-a236ccb63c99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"519e15507976d530f577bb41d8b57861","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"519e15507976d530f577bb41d8b57861","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d96d17e3f94445d38046eef3bdde3368","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d96d17e3f94445d38046eef3bdde3368","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"}}},"level":"info","message":"received a callback","requestID":"519e15507976d530f577bb41d8b57861"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd531adac-5fca-43e6-9c25-b552a9ad9234': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd531adac-5fca-43e6-9c25-b552a9ad9234","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"bd3fc1f1-c8fe-435a-83d5-13beb8504873","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.1969376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fce24220-10ff-4135-a46d-23a505d6a0fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.1971788} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"}}},"level":"info","message":"received a callback","requestID":"d96d17e3f94445d38046eef3bdde3368"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d531adac-5fca-43e6-9c25-b552a9ad9234","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234 204 36ms","method":"DELETE","requestID":"50af1b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":204,"url":"/peerconnections/d531adac-5fca-43e6-9c25-b552a9ad9234"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"},"level":"info","message":"Successfully finished experiment","requestID":"2e3d6aad2d872ba82306b98ce79b5c73"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b6bc40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9cdd770e-6d90-43a6-98fb-e2e56dc91455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"456485c6-4d74-4c9c-8ac5-275b9697a3e4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.232664} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.415683,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50b6bc40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50b6bc40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b6bc40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling 200 8ms","method":"POST","requestID":"50b6bc40-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/9cdd770e-6d90-43a6-98fb-e2e56dc91455/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b81bd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F40a9acbe-3f8c-4585-b37b-2a729dc87420': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F40a9acbe-3f8c-4585-b37b-2a729dc87420","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"966c9bc9-5322-4cb6-8b20-6ac3c985db15","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.2393758} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"709108d8-9fe0-4fbc-93c3-2dd3260af3e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.239724} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"2e3d6aad2d872ba82306b98ce79b5c73","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6a450c50-90e7-4804-ae17-a236ccb63c99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b32712c-3bb1-47a3-80a9-fb63048712c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.2417305} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.034943,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"50b81bd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50b81bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b81bd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling 200 8ms","method":"POST","requestID":"50b81bd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/6a450c50-90e7-4804-ae17-a236ccb63c99/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420","requestID":"2e3d6aad2d872ba82306b98ce79b5c73"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420 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":"2e3d6aad2d872ba82306b98ce79b5c73"} experiment-1 | {"level":"info","message":"DELETE /experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420 204 130ms","method":"DELETE","requestID":"2e3d6aad2d872ba82306b98ce79b5c73","responseTime":130,"status":204,"url":"/experiments/40a9acbe-3f8c-4585-b37b-2a729dc87420"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"2.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8af436b8a1d108a2a6aa4dd70e697b97"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"519e15507976d530f577bb41d8b57861","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"519e15507976d530f577bb41d8b57861"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"d96d17e3f94445d38046eef3bdde3368","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"d96d17e3f94445d38046eef3bdde3368"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"4a8d49b7ca81c053d5bac547797a700f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a8d49b7ca81c053d5bac547797a700f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4a8d49b7ca81c053d5bac547797a700f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.645","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f292c79502c1da3d0fa546081e5c9150"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.034387,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a8d49b7ca81c053d5bac547797a700f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","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/9cdd770e-6d90-43a6-98fb-e2e56dc91455' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b5fc9416-01b2-4404-a657-f1e23b2d34e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.326813} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6a450c50-90e7-4804-ae17-a236ccb63c99' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6acf41cb-45f7-4e7b-bbf3-593cb240c533","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3315961} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"76fb9589-5770-4871-8fe5-2557f9f40cd9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3419135} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94d01431-0716-400d-9f16-636aa4e5c1b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3420496} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"f4a33e90-2696-4ff8-92f7-2667ed9e38d9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3462822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4a8d49b7ca81c053d5bac547797a700f"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"4a8d49b7ca81c053d5bac547797a700f","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a8d49b7ca81c053d5bac547797a700f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"cba5a7b3007a624bda1641825df6fb06"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cba5a7b3007a624bda1641825df6fb06","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cba5a7b3007a624bda1641825df6fb06"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.69554,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cba5a7b3007a624bda1641825df6fb06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"253fa8f3-4669-491f-900c-f024b1bfb160","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3758023} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"352967b7-37c6-4371-bca2-3edb26b09243","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3803267} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"42bebd98-27a6-4f92-a437-bea3511e1789","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3920805} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"faceddb1-551b-4485-b3bc-f3f889726f61","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3921654} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"6559b173-d3b6-436e-931c-68d4ae53d2cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.3960624} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cba5a7b3007a624bda1641825df6fb06"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"cba5a7b3007a624bda1641825df6fb06","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cba5a7b3007a624bda1641825df6fb06"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"3152f8f2b4b2ef45f650e68192e6a652"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3152f8f2b4b2ef45f650e68192e6a652","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3152f8f2b4b2ef45f650e68192e6a652"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214992,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3152f8f2b4b2ef45f650e68192e6a652","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3152f8f2b4b2ef45f650e68192e6a652","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"e9051007-fb3c-4c36-9b9d-1eb8182db4ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.881514} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3152f8f2b4b2ef45f650e68192e6a652","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"564b81b4-375a-4b49-8298-c0b092123118","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.8875086} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3152f8f2b4b2ef45f650e68192e6a652","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"b3b513fa-63a6-4d9d-9424-8a3be127445e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541044.9007106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3152f8f2b4b2ef45f650e68192e6a652","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3152f8f2b4b2ef45f650e68192e6a652"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/eb85395f-6908-4b91-94b5-2208161e04a3 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3152f8f2b4b2ef45f650e68192e6a652"} device-1 | {"level":"info","message":"PATCH /devices/eb85395f-6908-4b91-94b5-2208161e04a3 200 34ms","method":"PATCH","requestID":"3152f8f2b4b2ef45f650e68192e6a652","responseTime":34,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q","level":"info","message":"auth send jwt","requestID":"14b0d1209cf020ea690f199826313d0e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14b0d1209cf020ea690f199826313d0e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"14b0d1209cf020ea690f199826313d0e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.172404,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"14b0d1209cf020ea690f199826313d0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541044,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0NH0.X8_ELxWd_yRGz1pc8GazmmXEnq6oMu_gPoEmd3WFv8Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14b0d1209cf020ea690f199826313d0e","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"14b0d1209cf020ea690f199826313d0e"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/websocket 200 24ms","method":"POST","requestID":"14b0d1209cf020ea690f199826313d0e","responseTime":24,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"14b0d1209cf020ea690f199826313d0e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f7123cde807be2e6df718a8e4e76c729","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f7123cde807be2e6df718a8e4e76c729","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/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":"f7123cde807be2e6df718a8e4e76c729"} device-1 | {"level":"info","message":"OPTIONS /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/websocket 200 1ms","method":"OPTIONS","requestID":"f7123cde807be2e6df718a8e4e76c729","responseTime":1,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"fd10bf84720d518062079dedc90192db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fd10bf84720d518062079dedc90192db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fd10bf84720d518062079dedc90192db"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247256,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fd10bf84720d518062079dedc90192db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd10bf84720d518062079dedc90192db","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fd10bf84720d518062079dedc90192db"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/websocket 200 21ms","method":"POST","requestID":"fd10bf84720d518062079dedc90192db","responseTime":21,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/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":"fd10bf84720d518062079dedc90192db"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"06a98f9d540afc78d838c90758a1d919","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"06a98f9d540afc78d838c90758a1d919","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"06a98f9d540afc78d838c90758a1d919"} device-1 | {"level":"info","message":"OPTIONS /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 1ms","method":"OPTIONS","requestID":"06a98f9d540afc78d838c90758a1d919","responseTime":1,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"d7bce12388b5c03a3f069c28635a50b1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d7bce12388b5c03a3f069c28635a50b1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d7bce12388b5c03a3f069c28635a50b1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253804,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d7bce12388b5c03a3f069c28635a50b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7bce12388b5c03a3f069c28635a50b1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"d1992dfb-34ff-4546-99d0-f4561265e30c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.5162427} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7bce12388b5c03a3f069c28635a50b1","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f443f65-1cce-48ae-be6e-dceb8a9087d7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.5240266} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d7bce12388b5c03a3f069c28635a50b1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"e34d3f4a-4032-43f3-970d-eeb62b33eeff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.5392258} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d7bce12388b5c03a3f069c28635a50b1","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d7bce12388b5c03a3f069c28635a50b1"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d7bce12388b5c03a3f069c28635a50b1"} device-1 | {"level":"info","message":"PATCH /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 40ms","method":"PATCH","requestID":"d7bce12388b5c03a3f069c28635a50b1","responseTime":40,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179026,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"97fe6d5f-ad62-4d27-85ff-a9eab3303035","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.5673335} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e"} device-1 | {"level":"info","message":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? 200 18ms","method":"GET","requestID":"c1bc45becb7dcd3d5ba6aab96cdacd7e","responseTime":18,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"8c92711716bc96c1b8943f8c347d93dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c92711716bc96c1b8943f8c347d93dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8c92711716bc96c1b8943f8c347d93dc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245093,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8c92711716bc96c1b8943f8c347d93dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8c92711716bc96c1b8943f8c347d93dc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"93b5bba0-e6f6-45aa-8f02-0c76996f4f6f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.5919414} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8c92711716bc96c1b8943f8c347d93dc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8c92711716bc96c1b8943f8c347d93dc"} device-1 | {"level":"info","message":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 16ms","method":"GET","requestID":"8c92711716bc96c1b8943f8c347d93dc","responseTime":16,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c92711716bc96c1b8943f8c347d93dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"da8a91f484acc651d7adc01c45d20a5b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da8a91f484acc651d7adc01c45d20a5b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"da8a91f484acc651d7adc01c45d20a5b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.121302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"da8a91f484acc651d7adc01c45d20a5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da8a91f484acc651d7adc01c45d20a5b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to run experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to book experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully booked experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300578,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.0926,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"120965ef-fb78-4614-950d-95303ca56136","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.6574311} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"8741d526-8eab-46bb-9a7f-40784a4c40a0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.6581995} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? 200 15ms","method":"GET","requestID":"5227ff80-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 16ms","method":"GET","requestID":"52282690-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Setting up experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully locked booking for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to update booking for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully updated booking for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully set up experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52334a20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927693,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully running experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206282,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0324a33-5265-479e-9913-ecc03d5fcfc6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7312944} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"89b2dee9-c7a6-4ca8-8b8c-737ff522c845","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7344103} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.226156,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"58e271f1-5275-47d0-ab36-4eea492ab932","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7361028} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52334a20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"52334a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52334a20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling 200 23ms","method":"POST","requestID":"52334a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? 200 30ms","method":"GET","requestID":"523286d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 30ms","method":"GET","requestID":"5232fc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5237b6f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf576279-9281-4c7f-9189-0f1864950277#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf576279-9281-4c7f-9189-0f1864950277","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"cc9515cf-9446-44b8-89ef-2aa8d480e290","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.752127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6b85700-5564-4ca0-8098-55478d26d8bc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7523842} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52380510-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"da8a91f484acc651d7adc01c45d20a5b","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4275fe0-a295-4e2f-9fab-2f21d8be1f47","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7600846} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.861469,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"da8a91f484acc651d7adc01c45d20a5b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5237b6f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","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":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da8a91f484acc651d7adc01c45d20a5b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 163ms","method":"POST","requestID":"da8a91f484acc651d7adc01c45d20a5b","responseTime":163,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"5237b6f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9035c653-40ab-4d1a-866e-3bb35f86199d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.76441} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.437486,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52380510-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"52380510-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5237b6f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling 200 21ms","method":"POST","requestID":"5237b6f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"afd38898ad2ebff41baa40c4b5ed82db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"afd38898ad2ebff41baa40c4b5ed82db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52380510-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling 200 22ms","method":"POST","requestID":"52380510-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afd38898ad2ebff41baa40c4b5ed82db"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"523bd5a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.078474,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"afd38898ad2ebff41baa40c4b5ed82db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"afd38898ad2ebff41baa40c4b5ed82db","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8db972c-1de5-480f-a372-db31ebe0a58a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7825136} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.585603,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"523bd5a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"523bd5a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"17d11dc1-8878-4325-98aa-d05842fd3272","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7864354} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"523bd5a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling 200 9ms","method":"POST","requestID":"523bd5a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"afd38898ad2ebff41baa40c4b5ed82db","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afd38898ad2ebff41baa40c4b5ed82db"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afd38898ad2ebff41baa40c4b5ed82db"} device-1 | {"level":"info","message":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? 200 18ms","method":"GET","requestID":"afd38898ad2ebff41baa40c4b5ed82db","responseTime":18,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813231,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743917,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.341875448Z"}]},"request_id":"56dea0cd-a20d-45b4-895e-fac21d813f6e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.7993221} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"09bf8f84-2529-44b8-a619-31057f40c9b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.8006613} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.789525,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} device-1 | {"level":"info","message":"GET /devices/eb85395f-6908-4b91-94b5-2208161e04a3? 200 14ms","method":"GET","requestID":"523daa60-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c4da87bf76f4967055ac62c1ab3d8ab4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 17ms","method":"GET","requestID":"523dd170-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:24.392040338Z"}]},"request_id":"d51206c6-3b86-456e-8bfb-d50afba93be5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.8088174} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Building connection plan","requestID":"da8a91f484acc651d7adc01c45d20a5b"} 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":"81dcecce-7c19-44c3-a378-54c5ad9e16a2"},{"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":"eaa85a14-80b9-4610-b8ff-9002b770c1c8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"330aaa7c-63da-4730-8c5f-59167f095a93"}]},"level":"info","message":"Built pairwise service configurations","requestID":"da8a91f484acc651d7adc01c45d20a5b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5240deb0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5240deb0-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? 200 13ms","method":"GET","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4","responseTime":13,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4da87bf76f4967055ac62c1ab3d8ab4"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"5240deb0-86cf-11ef-a631-87f051e9b6e3","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3?id=079e119c-5545-4db6-96aa-eacc5d2d1793","ws://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3?id=8fac0f63-0fac-4675-976c-c0f7b1fc9b62"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"da8a91f484acc651d7adc01c45d20a5b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.950863,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e8cd22ac-4669-40d0-9aac-09de114e2746","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.8257482} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d1efcf5-a26a-44df-b0aa-15c341a17159","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.8260083} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5'","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5'","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"52417af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"524635e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"079e119c-5545-4db6-96aa-eacc5d2d1793\" in room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\"","requestID":"524635e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"524635e0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2837b88518265d94c7e5b668232092c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5246ab10-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b2837b88518265d94c7e5b668232092c","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8fac0f63-0fac-4675-976c-c0f7b1fc9b62\" in room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\"","requestID":"5246ab10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5246ab10-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8fac0f63-0fac-4675-976c-c0f7b1fc9b62\" in room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\"","requestID":"5246ab10-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"}}},"level":"info","message":"received a callback","requestID":"b2837b88518265d94c7e5b668232092c"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"b2837b88518265d94c7e5b668232092c","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"b2837b88518265d94c7e5b668232092c"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"da8a91f484acc651d7adc01c45d20a5b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"524b6600-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3779024d-c484-4440-8cb4-cc6aa6764aec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.8842113} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.198232,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"524b6600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"524b6600-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f22e0aaf6955297e72ae2a826e6010f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f22e0aaf6955297e72ae2a826e6010f2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"}}},"level":"info","message":"received a callback","requestID":"f22e0aaf6955297e72ae2a826e6010f2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"524dd700-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"524b6600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling 200 18ms","method":"POST","requestID":"524b6600-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"524e7340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ffae5d8-c350-4143-9170-6f9922ccaaf5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ab35806-b82c-451d-bf22-fb7a8ae09ecb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.9006934} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.211656,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"524dd700-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5","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":"524dd700-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27fb96e4-46f9-4cbf-a626-dec49b6a8ad3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.903483} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.973311,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"524dd700-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"524e7340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"GET /peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5 200 9ms","method":"GET","requestID":"524dd700-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"524e7340-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"524e7340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling 200 7ms","method":"POST","requestID":"524e7340-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"f22e0aaf6955297e72ae2a826e6010f2","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"f22e0aaf6955297e72ae2a826e6010f2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52513260-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bbb5483-1f1e-4110-bda1-f6971da394dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.9219055} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.099123,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52513260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"52513260-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52513260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling 200 7ms","method":"POST","requestID":"52513260-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"525291f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09edfc90-66e6-45bb-8224-15a0fbd93858","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541046.9307048} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.032337,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"525291f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"525291f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"525291f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling 200 7ms","method":"POST","requestID":"525291f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"9e25ef01347a134434aa5857d7bd3cc6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e25ef01347a134434aa5857d7bd3cc6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cf576279-9281-4c7f-9189-0f1864950277","requestID":"9e25ef01347a134434aa5857d7bd3cc6"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.889832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9e25ef01347a134434aa5857d7bd3cc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e25ef01347a134434aa5857d7bd3cc6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cf576279-9281-4c7f-9189-0f1864950277","requestID":"9e25ef01347a134434aa5857d7bd3cc6"} experiment-1 | {"level":"info","message":"GET /experiments/cf576279-9281-4c7f-9189-0f1864950277 200 15ms","method":"GET","requestID":"9e25ef01347a134434aa5857d7bd3cc6","responseTime":15,"status":200,"url":"/experiments/cf576279-9281-4c7f-9189-0f1864950277"} gateway-1 | {"time_local":"10/Oct/2024:06:17:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cf576279-9281-4c7f-9189-0f1864950277 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9e25ef01347a134434aa5857d7bd3cc6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0","level":"info","message":"auth send jwt","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4ed1fa3b1ae256e171171a980f17f85","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cf576279-9281-4c7f-9189-0f1864950277","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.163575,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f4ed1fa3b1ae256e171171a980f17f85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4ed1fa3b1ae256e171171a980f17f85","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Attempting to finish experiment","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.23292,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541046,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0Nn0._KFOnEjcESGuK-NZ3aXMiv0k3byF55WFD4ugL7vfdj0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3?id=079e119c-5545-4db6-96aa-eacc5d2d1793 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a4fa63a256ac19cbdbb2eabc3edad243"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"079e119c-5545-4db6-96aa-eacc5d2d1793\" in room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"079e119c-5545-4db6-96aa-eacc5d2d1793\" from room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3?id=8fac0f63-0fac-4675-976c-c0f7b1fc9b62 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.162","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e996995d84aa6e4b90cf36a9f67a53c6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8fac0f63-0fac-4675-976c-c0f7b1fc9b62\" in room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8fac0f63-0fac-4675-976c-c0f7b1fc9b62\" from room \"http://localhost/rooms/0a4f431f-cc9a-417c-94ea-55641eea26b3\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5","device":"7a2fe8ea-ae91-477c-86d9-bd06880b4d31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f8fa1bf9e036aca2b8f3d24cb676571","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f8fa1bf9e036aca2b8f3d24cb676571","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ffae5d8-c350-4143-9170-6f9922ccaaf5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ffae5d8-c350-4143-9170-6f9922ccaaf5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"c9510e0c-4667-41a3-80f2-2f3b67c33080","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0139277} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83b1ac04057adadb8880c7fe472f4c3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"}}},"level":"info","message":"received a callback","requestID":"0f8fa1bf9e036aca2b8f3d24cb676571"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"511ded9d-8ae5-493f-b41d-3ea6256d1e1f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0143173} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"83b1ac04057adadb8880c7fe472f4c3d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"}}},"level":"info","message":"received a callback","requestID":"83b1ac04057adadb8880c7fe472f4c3d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2ffae5d8-c350-4143-9170-6f9922ccaaf5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5 204 37ms","method":"DELETE","requestID":"525d4050-86cf-11ef-b00e-2fb111b9dda5","responseTime":37,"status":204,"url":"/peerconnections/2ffae5d8-c350-4143-9170-6f9922ccaaf5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf576279-9281-4c7f-9189-0f1864950277"},"level":"info","message":"Successfully finished experiment","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"526619f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb85395f-6908-4b91-94b5-2208161e04a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23d370b5-9f49-4a91-81c3-eb306bec2e5e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0617685} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.082906,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"526619f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb85395f-6908-4b91-94b5-2208161e04a3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"526619f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"526619f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling 200 13ms","method":"POST","requestID":"526619f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/eb85395f-6908-4b91-94b5-2208161e04a3/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf576279-9281-4c7f-9189-0f1864950277': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf576279-9281-4c7f-9189-0f1864950277","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d1af766d-0afd-4850-bf91-7aa24677272f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0685482} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"451bf554-4e40-40e7-89a4-7666fcdd3d2a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0690114} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f4ed1fa3b1ae256e171171a980f17f85","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52688af0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a2fe8ea-ae91-477c-86d9-bd06880b4d31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc561b77-29ee-4e18-988d-c429b3bae9c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.0776217} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.702705,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"52688af0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"52688af0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52688af0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling 200 13ms","method":"POST","requestID":"52688af0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7a2fe8ea-ae91-477c-86d9-bd06880b4d31/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cf576279-9281-4c7f-9189-0f1864950277","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cf576279-9281-4c7f-9189-0f1864950277 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4ed1fa3b1ae256e171171a980f17f85"} experiment-1 | {"level":"info","message":"DELETE /experiments/cf576279-9281-4c7f-9189-0f1864950277 204 158ms","method":"DELETE","requestID":"f4ed1fa3b1ae256e171171a980f17f85","responseTime":158,"status":204,"url":"/experiments/cf576279-9281-4c7f-9189-0f1864950277"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"2.203","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"006879d47742bf26e6a6317814803dd9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"0f8fa1bf9e036aca2b8f3d24cb676571","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f8fa1bf9e036aca2b8f3d24cb676571"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"83b1ac04057adadb8880c7fe472f4c3d","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"83b1ac04057adadb8880c7fe472f4c3d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo","level":"info","message":"auth send jwt","requestID":"e4a35a234106fdb3a0d63bd30de9cd49"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e4a35a234106fdb3a0d63bd30de9cd49"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.693","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a288d2b84a5ec19e59079409884c1be2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.05143,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e4a35a234106fdb3a0d63bd30de9cd49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541047,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","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/eb85395f-6908-4b91-94b5-2208161e04a3' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e6b6c372-e3ff-45d8-b62d-e66bb093e7fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.1662536} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","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/7a2fe8ea-ae91-477c-86d9-bd06880b4d31' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eaeb47cd-de64-403a-b74c-de030a852a02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.1713152} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"aec4b938-1891-4f0d-a4bf-163ad44d4b1e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.180337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b601de1d-5c74-42c4-9ed4-5d203f5033c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.1804278} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"56734c79-d89d-422a-b557-b5c9a7feeb0f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.1847465} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e4a35a234106fdb3a0d63bd30de9cd49"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4a35a234106fdb3a0d63bd30de9cd49"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"e4a35a234106fdb3a0d63bd30de9cd49","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo","level":"info","message":"auth send jwt","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.834174,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541047,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"aaf86fe0-3b30-4f83-b746-eca5e281888b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.2130358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb4fc89-1809-411d-9d74-d0b063fe7419","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.2174015} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1461dfa7-baab-46f5-abf2-ac52d75f9258","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.2278018} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64eca000-d8e2-4eac-ba81-7971705a2b69","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.228039} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"8bb428ec-08bd-4baa-993b-699f3ea00b41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.232108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"6f94107da7e8c9cf7a6ed371dcde71ea","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo","level":"info","message":"auth send jwt","requestID":"a4e1c3cd27ebad58c4028dd2774e9625"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a4e1c3cd27ebad58c4028dd2774e9625"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209137,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a4e1c3cd27ebad58c4028dd2774e9625","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541047,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"7da540b4-dad9-41dc-b1bb-6821bc50074f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.7164412} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec316a88-fef1-4e44-b1e3-edb88f36aad3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.7231321} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"d7a644fb-f8fe-46d2-9cd3-d462ade62342","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541047.73585} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a4e1c3cd27ebad58c4028dd2774e9625"} device-1 | {"level":"info","message":"PATCH /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2 200 35ms","method":"PATCH","requestID":"a4e1c3cd27ebad58c4028dd2774e9625","responseTime":35,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a4e1c3cd27ebad58c4028dd2774e9625"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo","level":"info","message":"auth send jwt","requestID":"76bb42bed5adba39cea21e00209094f2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76bb42bed5adba39cea21e00209094f2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"76bb42bed5adba39cea21e00209094f2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185914,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76bb42bed5adba39cea21e00209094f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541047,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0N30.gMv6puPY5Nw7q4n7dSpGNUb4j2HJX__wbhoNsY8K4Oo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76bb42bed5adba39cea21e00209094f2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"76bb42bed5adba39cea21e00209094f2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"76bb42bed5adba39cea21e00209094f2"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/websocket 200 19ms","method":"POST","requestID":"76bb42bed5adba39cea21e00209094f2","responseTime":19,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c3b9a481237e43de487d97125114e34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2c3b9a481237e43de487d97125114e34","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/websocket 200 1ms","method":"OPTIONS","requestID":"2c3b9a481237e43de487d97125114e34","responseTime":1,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/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":"2c3b9a481237e43de487d97125114e34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"ea3efe8abe72a46ce6278fec549ad6cc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea3efe8abe72a46ce6278fec549ad6cc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea3efe8abe72a46ce6278fec549ad6cc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183826,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ea3efe8abe72a46ce6278fec549ad6cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ea3efe8abe72a46ce6278fec549ad6cc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea3efe8abe72a46ce6278fec549ad6cc"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/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":"ea3efe8abe72a46ce6278fec549ad6cc"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/websocket 200 20ms","method":"POST","requestID":"ea3efe8abe72a46ce6278fec549ad6cc","responseTime":20,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b2c4ff58966ccf9fc26d9c865bd8160","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3b2c4ff58966ccf9fc26d9c865bd8160","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3b2c4ff58966ccf9fc26d9c865bd8160"} device-1 | {"level":"info","message":"OPTIONS /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 1ms","method":"OPTIONS","requestID":"3b2c4ff58966ccf9fc26d9c865bd8160","responseTime":1,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"de4bdd8403ed9e30906b41c6a3e906b7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"de4bdd8403ed9e30906b41c6a3e906b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.316678,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"de4bdd8403ed9e30906b41c6a3e906b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"35758938-7041-43cd-bf79-4ebf610deecd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.3428936} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f21095b-9b29-40e3-9aeb-ab4f179082b0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.3501332} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"8f3598f7-82f7-4e7f-9f86-43cb705f737b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.3630452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"de4bdd8403ed9e30906b41c6a3e906b7"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"de4bdd8403ed9e30906b41c6a3e906b7"} device-1 | {"level":"info","message":"PATCH /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 37ms","method":"PATCH","requestID":"de4bdd8403ed9e30906b41c6a3e906b7","responseTime":37,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"e84a64d338694ad0be48c2ecd61fe86d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e84a64d338694ad0be48c2ecd61fe86d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e84a64d338694ad0be48c2ecd61fe86d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181467,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e84a64d338694ad0be48c2ecd61fe86d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e84a64d338694ad0be48c2ecd61fe86d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"e7fae3b3-8f03-4bc8-8aba-4de9c3b58231","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.392104} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e84a64d338694ad0be48c2ecd61fe86d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e84a64d338694ad0be48c2ecd61fe86d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e84a64d338694ad0be48c2ecd61fe86d"} device-1 | {"level":"info","message":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? 200 16ms","method":"GET","requestID":"e84a64d338694ad0be48c2ecd61fe86d","responseTime":16,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"1136d5e633c4dbbd989b85a8098b5e8f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1136d5e633c4dbbd989b85a8098b5e8f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1136d5e633c4dbbd989b85a8098b5e8f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305526,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1136d5e633c4dbbd989b85a8098b5e8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1136d5e633c4dbbd989b85a8098b5e8f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"97c835f0-36ed-46cf-ab1f-fdf52a1e154e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.4165246} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1136d5e633c4dbbd989b85a8098b5e8f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1136d5e633c4dbbd989b85a8098b5e8f"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1136d5e633c4dbbd989b85a8098b5e8f"} device-1 | {"level":"info","message":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 17ms","method":"GET","requestID":"1136d5e633c4dbbd989b85a8098b5e8f","responseTime":17,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"7f8784d59570b48547d729c368e5a29b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7f8784d59570b48547d729c368e5a29b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7f8784d59570b48547d729c368e5a29b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.102706,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7f8784d59570b48547d729c368e5a29b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7f8784d59570b48547d729c368e5a29b","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to run experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to book experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully booked experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141246,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.303804,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"d23c4b5b-8668-4bef-9e2e-2c87e1b5af75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.487865} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"94b2dca8-5e61-4d2a-817f-501bd407fa78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.489565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? 200 20ms","method":"GET","requestID":"53d78440-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 19ms","method":"GET","requestID":"53d7d260-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Setting up experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully set up experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"53e6ed90-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully running experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.481347,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145156,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"9f402edc-c1a4-454f-9e52-7dd359ba7b85","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.5887547} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"6fff6791-517b-4d46-9e5a-84a48f4e14b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.5901048} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dfc4c310-1e7b-4194-80c7-6b97728a80b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.5933692} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.900375,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53e6ed90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","rebac_allow":false,"scope_allow":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":"53e6ed90-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? 200 24ms","method":"GET","requestID":"53e67860-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 24ms","method":"GET","requestID":"53e69f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"53eae530-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"53e6ed90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling 200 28ms","method":"POST","requestID":"53e6ed90-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb1c2792-7477-4f7b-9781-6fe305f37adc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6064305} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3d5bb2d1-3645-4859-bc6c-7382c87c1c57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6068425} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"53eba880-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7f8784d59570b48547d729c368e5a29b","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0346406-9d96-47db-ac1d-258114f8be0b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6095448} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.729097,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53eae530-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"53eae530-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9a65994-1da9-4836-b7e7-fd3018a4a09b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6143281} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.828686,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"53eae530-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling 200 13ms","method":"POST","requestID":"53eae530-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53eba880-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","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/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7f8784d59570b48547d729c368e5a29b"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"53eba880-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.193","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f8784d59570b48547d729c368e5a29b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 187ms","method":"POST","requestID":"7f8784d59570b48547d729c368e5a29b","responseTime":187,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"53eba880-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling 200 12ms","method":"POST","requestID":"53eba880-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"53eda450-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"ccd289225c97070a2cde8ad18b7ff189"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ccd289225c97070a2cde8ad18b7ff189","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ccd289225c97070a2cde8ad18b7ff189"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"830721ec-b503-4094-9145-c17780341b29","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6270792} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.295775,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801315,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53eda450-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"53eda450-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ccd289225c97070a2cde8ad18b7ff189","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ccd289225c97070a2cde8ad18b7ff189","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"53eda450-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling 200 12ms","method":"POST","requestID":"53eda450-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"d532394a-7b4a-4851-95e6-6aed33fd007d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6339242} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ccd289225c97070a2cde8ad18b7ff189","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ccd289225c97070a2cde8ad18b7ff189"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ccd289225c97070a2cde8ad18b7ff189"} device-1 | {"level":"info","message":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? 200 14ms","method":"GET","requestID":"ccd289225c97070a2cde8ad18b7ff189","responseTime":14,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.935877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840158,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849435,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0d8aff92946cd0d2ec4d003703ef3dfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.180310156Z"}]},"request_id":"bb86b3b4-3712-4afd-b0fe-02aab123bb2e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6494353} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"487b2e25-4110-401b-920b-4d30a657a3d3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.655047} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:27.227729299Z"}]},"request_id":"dbe22a1a-74c4-4d30-b657-76a191f5c9e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.656811} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2? 200 20ms","method":"GET","requestID":"53f03c60-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 20ms","method":"GET","requestID":"53f08a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd"} device-1 | {"level":"info","message":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? 200 18ms","method":"GET","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd","responseTime":18,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d8aff92946cd0d2ec4d003703ef3dfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Building connection plan","requestID":"7f8784d59570b48547d729c368e5a29b"} 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":"31c2be62-a6dc-4022-acf5-a5c9902f81e6"},{"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":"221d1e8e-4068-4b02-b2d6-a891cd61aa3e"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"07de0b02-c373-4605-a308-87a895dd5e26"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7f8784d59570b48547d729c368e5a29b"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"53f40cf0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"53f40cf0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"53f40cf0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1?id=6a106f97-d2c5-4f76-8420-783d2e4614e7","ws://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1?id=3a4373b8-c30f-4ecf-b235-12d1ffaf0f08"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7f8784d59570b48547d729c368e5a29b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.02069,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5a22bd39-a7bb-4983-9733-bd29b9dd6116","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6786838} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e6e7f93-6a1a-4aa0-a6b0-4efc32556103","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.6789088} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef'","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef'","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} 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":"53f4a930-86cf-11ef-b00e-2fb111b9dda5","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":"53f4a930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"53f98b30-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6a106f97-d2c5-4f76-8420-783d2e4614e7\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\"","requestID":"53f98b30-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"53f98b30-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81ea576101249c9a8239c91d45cb5557","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"53fa0060-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\"","requestID":"53fa0060-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"81ea576101249c9a8239c91d45cb5557","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"53fa0060-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\"","requestID":"53fa0060-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"}}},"level":"info","message":"received a callback","requestID":"81ea576101249c9a8239c91d45cb5557"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"81ea576101249c9a8239c91d45cb5557","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"81ea576101249c9a8239c91d45cb5557"} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7f8784d59570b48547d729c368e5a29b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"53fee260-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24942e9d-d761-4d02-827f-f8917b4c1f20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.7390773} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.578147,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"42fac9d743669da8942e8bf53fea751b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"53fee260-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"42fac9d743669da8942e8bf53fea751b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53fee260-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"}}},"level":"info","message":"received a callback","requestID":"42fac9d743669da8942e8bf53fea751b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"54017a70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"53fee260-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling 200 19ms","method":"POST","requestID":"53fee260-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54023dc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2384507d-6c71-4045-a5d5-640f394ad4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df4f754a-63e9-4d0f-8fd0-21f2e4d96332","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.7569628} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.919482,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54017a70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef","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":"54017a70-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b64f0878-fe03-4dea-8e35-9c54e7050811","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.7609825} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.637767,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"54017a70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54023dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54023dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef 200 12ms","method":"GET","requestID":"54017a70-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54023dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling 200 11ms","method":"POST","requestID":"54023dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"42fac9d743669da8942e8bf53fea751b","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"42fac9d743669da8942e8bf53fea751b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54063560-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"baf9618f-a25b-4b59-bca7-71ed6c503045","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.7868667} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.649633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54063560-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54063560-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54063560-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling 200 8ms","method":"POST","requestID":"54063560-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5407bc00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0e53f37-e07d-4eb5-917b-c1d1d87efe8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.796107} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26052,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5407bc00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5407bc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5407bc00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling 200 7ms","method":"POST","requestID":"5407bc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"efa234c1458133d8c7dbd32831fa3526"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"efa234c1458133d8c7dbd32831fa3526","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","requestID":"efa234c1458133d8c7dbd32831fa3526"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.769568,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"efa234c1458133d8c7dbd32831fa3526","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"efa234c1458133d8c7dbd32831fa3526","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","requestID":"efa234c1458133d8c7dbd32831fa3526"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efa234c1458133d8c7dbd32831fa3526"} experiment-1 | {"level":"info","message":"GET /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9 200 11ms","method":"GET","requestID":"efa234c1458133d8c7dbd32831fa3526","responseTime":11,"status":200,"url":"/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"641e9e294c9acbe83460e6589a663bc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"641e9e294c9acbe83460e6589a663bc7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","requestID":"641e9e294c9acbe83460e6589a663bc7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.977268,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"641e9e294c9acbe83460e6589a663bc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"641e9e294c9acbe83460e6589a663bc7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Attempting to finish experiment","requestID":"641e9e294c9acbe83460e6589a663bc7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.828797,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1?id=6a106f97-d2c5-4f76-8420-783d2e4614e7 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9f0b4fe363411612586fb0b765648606"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"6a106f97-d2c5-4f76-8420-783d2e4614e7\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"6a106f97-d2c5-4f76-8420-783d2e4614e7\" from room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef","device":"8b9b18b0-108d-4f6d-b537-9bfe351ffc56","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/2384507d-6c71-4045-a5d5-640f394ad4ef' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1?id=3a4373b8-c30f-4ecf-b235-12d1ffaf0f08 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.150","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9ec1a952cd99597ecb71ae83faad9a16"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" in room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3a4373b8-c30f-4ecf-b235-12d1ffaf0f08\" from room \"http://localhost/rooms/c878c545-76d4-47c9-a81d-ffff3f334ad1\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"739bec20e5dc1155574079bd3f5d63c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2384507d-6c71-4045-a5d5-640f394ad4ef': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2384507d-6c71-4045-a5d5-640f394ad4ef","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d605f084-4200-4f6b-8061-b48d107b6615","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.8543544} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"739bec20e5dc1155574079bd3f5d63c0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4455e6b23fe806d8e28cd91a0ba0a71f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"}}},"level":"info","message":"received a callback","requestID":"739bec20e5dc1155574079bd3f5d63c0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa700ce9-44c7-429e-8dd4-c809ea9de079","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.8546972} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4455e6b23fe806d8e28cd91a0ba0a71f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"}}},"level":"info","message":"received a callback","requestID":"4455e6b23fe806d8e28cd91a0ba0a71f"} device-1 | {"data":{"peerconnection":"2384507d-6c71-4045-a5d5-640f394ad4ef","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef 204 34ms","method":"DELETE","requestID":"540ee7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":34,"status":204,"url":"/peerconnections/2384507d-6c71-4045-a5d5-640f394ad4ef"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"},"level":"info","message":"Successfully finished experiment","requestID":"641e9e294c9acbe83460e6589a663bc7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5416b020-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c8f5c20-24c7-4453-9b31-51b2b1109dd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad1241ac-58a6-4af4-8411-3c50b6b01d81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.8946555} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.187166,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5416b020-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5416b020-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5416b020-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling 200 8ms","method":"POST","requestID":"5416b020-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/3c8f5c20-24c7-4453-9b31-51b2b1109dd2/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5f0755ce-022f-46d8-80c5-a72663959530","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.8993273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"141355fa-3910-4279-a86d-d911c395e1c9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.8994772} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54185dd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"641e9e294c9acbe83460e6589a663bc7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b9b18b0-108d-4f6d-b537-9bfe351ffc56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a19e31ed-94c4-40d2-9dd8-d62573ed57a1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.9056628} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.192223,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54185dd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54185dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54185dd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling 200 8ms","method":"POST","requestID":"54185dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/8b9b18b0-108d-4f6d-b537-9bfe351ffc56/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9","requestID":"641e9e294c9acbe83460e6589a663bc7"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9 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":"641e9e294c9acbe83460e6589a663bc7"} experiment-1 | {"level":"info","message":"DELETE /experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9 204 134ms","method":"DELETE","requestID":"641e9e294c9acbe83460e6589a663bc7","responseTime":134,"status":204,"url":"/experiments/9b8ac646-b9eb-4a5c-89c9-5a87fce1d1d9"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"2.198","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e6175d4e70ffc670d102af00e2d87729"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"739bec20e5dc1155574079bd3f5d63c0","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"739bec20e5dc1155574079bd3f5d63c0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"4455e6b23fe806d8e28cd91a0ba0a71f","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"4455e6b23fe806d8e28cd91a0ba0a71f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo","level":"info","message":"auth send jwt","requestID":"1777d081eebf2b623c26b3bd95e488ce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1777d081eebf2b623c26b3bd95e488ce","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1777d081eebf2b623c26b3bd95e488ce"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:29Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.688","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e2fb18f4c2597f02facf88a6448cb890"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.974179,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1777d081eebf2b623c26b3bd95e488ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541049,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA0OX0.FZlBes2Cde14VWRLWlLyqjoG_pPaViwIb_qXhdxyiJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","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/3c8f5c20-24c7-4453-9b31-51b2b1109dd2' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1552cd97-3ff5-4200-98a8-6c374b17fda3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.989389} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","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/8b9b18b0-108d-4f6d-b537-9bfe351ffc56' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e34f23d9-6f27-4320-89b2-a0ecf2e0ad35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541049.994341} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"49125841-e50f-4693-818b-ee12b763e92c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0040605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67950aec-83f0-4755-8699-8e1dd38b980a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0041625} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"19bb678a-2485-4a74-8030-4f96b555ae57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0082767} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1777d081eebf2b623c26b3bd95e488ce"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1777d081eebf2b623c26b3bd95e488ce"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1777d081eebf2b623c26b3bd95e488ce","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.804793,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dbfd522c-2bc3-4461-b56e-58ea7320c896","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0373952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec66c5b7-5e20-46fa-b57e-c6210db2cb5b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0421965} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b148993c-8355-478d-a5ca-9e5890a88d3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0534554} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0363f9aa-14c0-43b4-a372-02a8d0ace948","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0532587} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"201686d2-60bf-459e-a1c7-b2bbc3f53e95","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.0580974} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c518af5fc03fadab3e9cc64c1a8c50c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"05f5a37c190aa1a0c4ba86a08e30279a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"05f5a37c190aa1a0c4ba86a08e30279a"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97278,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"05f5a37c190aa1a0c4ba86a08e30279a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.65958,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"9a4fb632-0ab1-41b7-8aca-6c558516870b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.5354114} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"e3abf30c-2e85-4956-8fc1-d05f532792fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.5358827} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e1aea5c-dec1-4204-ae86-2d5837775e15","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.539715} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c386aa3-91b3-4d81-aeaa-8929d8583335","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.5408397} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"6ca79be3-bdee-4fdb-bcd9-a45cc62341be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.5441976} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/09adb385-4b39-4579-979d-8b2643e9794c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0"} device-1 | {"level":"info","message":"PATCH /devices/09adb385-4b39-4579-979d-8b2643e9794c 200 20ms","method":"PATCH","requestID":"59cd4f4b5290a5532f6d4e3d6a57cfe0","responseTime":20,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"d1c0f2d5b6a691f52556f54334964b63"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d1c0f2d5b6a691f52556f54334964b63","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d1c0f2d5b6a691f52556f54334964b63"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632781,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d1c0f2d5b6a691f52556f54334964b63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1c0f2d5b6a691f52556f54334964b63","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"2c2256e8-ca59-4c7e-8cdd-7332e42c21a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.5552897} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"05f5a37c190aa1a0c4ba86a08e30279a"} device-1 | {"level":"info","message":"PATCH /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001 200 35ms","method":"PATCH","requestID":"05f5a37c190aa1a0c4ba86a08e30279a","responseTime":35,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"05f5a37c190aa1a0c4ba86a08e30279a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"cffcaaaee628c2e959687ca219e261bb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cffcaaaee628c2e959687ca219e261bb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cffcaaaee628c2e959687ca219e261bb"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173342,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cffcaaaee628c2e959687ca219e261bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d1c0f2d5b6a691f52556f54334964b63"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cffcaaaee628c2e959687ca219e261bb","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d1c0f2d5b6a691f52556f54334964b63"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/websocket 200 18ms","method":"POST","requestID":"d1c0f2d5b6a691f52556f54334964b63","responseTime":18,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cffcaaaee628c2e959687ca219e261bb"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"cffcaaaee628c2e959687ca219e261bb"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/websocket 200 17ms","method":"POST","requestID":"cffcaaaee628c2e959687ca219e261bb","responseTime":17,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"36dcc353d97c1646c9fdf38de6686c1a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"36dcc353d97c1646c9fdf38de6686c1a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36dcc353d97c1646c9fdf38de6686c1a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701262,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"36dcc353d97c1646c9fdf38de6686c1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36dcc353d97c1646c9fdf38de6686c1a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"f67ab59e-e0e3-40dd-9aa4-b06c765fda20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.6155968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"36dcc353d97c1646c9fdf38de6686c1a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36dcc353d97c1646c9fdf38de6686c1a"} device-1 | {"level":"info","message":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? 200 12ms","method":"GET","requestID":"36dcc353d97c1646c9fdf38de6686c1a","responseTime":12,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36dcc353d97c1646c9fdf38de6686c1a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"afe21395af2eb219276cdb8591d17b07"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"afe21395af2eb219276cdb8591d17b07","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afe21395af2eb219276cdb8591d17b07"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893153,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"afe21395af2eb219276cdb8591d17b07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"afe21395af2eb219276cdb8591d17b07","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"9106725f-2779-4647-a6ae-3736dad65968","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.6330173} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"afe21395af2eb219276cdb8591d17b07","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afe21395af2eb219276cdb8591d17b07"} device-1 | {"level":"info","message":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? 200 12ms","method":"GET","requestID":"afe21395af2eb219276cdb8591d17b07","responseTime":12,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afe21395af2eb219276cdb8591d17b07"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"2b06d31d473493c458b63b131f06bec0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2b06d31d473493c458b63b131f06bec0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2b06d31d473493c458b63b131f06bec0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.366816,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2b06d31d473493c458b63b131f06bec0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b06d31d473493c458b63b131f06bec0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to run experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to book experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully booked experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.723471,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885632,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"708397db-8006-4df2-a5eb-732ce92938a8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.6834524} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"3c28c25d-c8b6-44d5-b05a-549563df898f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.6840081} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? 200 12ms","method":"GET","requestID":"548e7830-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? 200 12ms","method":"GET","requestID":"548e9f40-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Setting up experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully set up experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5497ee10-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully running experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890858,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002416,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.213641,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11d6233f-399e-4314-ae67-6658281e98f2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7454727} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5497ee10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","rebac_allow":false,"scope_allow":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":"5497ee10-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"ce43612f-ea1f-4aa4-9d2f-1c4e734e44ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.748256} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"7aeca306-260d-475c-ab98-15f77b05fa96","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7503648} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5497ee10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling 200 22ms","method":"POST","requestID":"5497ee10-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? 200 26ms","method":"GET","requestID":"549778e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? 200 24ms","method":"GET","requestID":"5497c700-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"549b9790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"549c33d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa955c73b-3155-43da-8104-5aaf37c8481d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa955c73b-3155-43da-8104-5aaf37c8481d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"99be862d-6b27-433c-8955-04806ebb6062","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7656527} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da6f3358-908d-4a45-9fba-184a513e93cf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7658734} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"2b06d31d473493c458b63b131f06bec0","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.156843,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18b9ad16-6ab5-403a-b92d-0fba000a99f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7689571} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"549b9790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"549b9790-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6b97d0a-0bc1-4fa0-937a-9d6d8c64b6e9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.772641} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.172439,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"549c33d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"549c33d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"549b9790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling 200 14ms","method":"POST","requestID":"549b9790-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"549c33d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling 200 12ms","method":"POST","requestID":"549c33d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2b06d31d473493c458b63b131f06bec0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"2b06d31d473493c458b63b131f06bec0","responseTime":137,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b06d31d473493c458b63b131f06bec0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"549e7dc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"7d7099320180ba94d7d1d5a51efd7f5c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7d7099320180ba94d7d1d5a51efd7f5c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d7099320180ba94d7d1d5a51efd7f5c"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0834bd7-ca0a-441c-b55f-17f2b95a3047","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.784612} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.472247,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"549e7dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"549e7dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.903056,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7d7099320180ba94d7d1d5a51efd7f5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d7099320180ba94d7d1d5a51efd7f5c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"549e7dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling 200 10ms","method":"POST","requestID":"549e7dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"5b59a19b-7fec-432c-800f-451f076d0ca0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.7905326} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7d7099320180ba94d7d1d5a51efd7f5c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d7099320180ba94d7d1d5a51efd7f5c"} device-1 | {"level":"info","message":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? 200 13ms","method":"GET","requestID":"7d7099320180ba94d7d1d5a51efd7f5c","responseTime":13,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.577891,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d7099320180ba94d7d1d5a51efd7f5c"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209034,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"c3d2731cf3ad1133656680e405cc4d53"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c3d2731cf3ad1133656680e405cc4d53","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3d2731cf3ad1133656680e405cc4d53"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.004022995Z"}]},"request_id":"67f44ee6-3079-44dc-a68e-ffb5713a8b3e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8013752} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"58976e1f-7fb9-477c-9819-77a8d54d6432","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8024204} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819191,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} device-1 | {"level":"info","message":"GET /devices/09adb385-4b39-4579-979d-8b2643e9794c? 200 13ms","method":"GET","requestID":"54a05280-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c3d2731cf3ad1133656680e405cc4d53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3d2731cf3ad1133656680e405cc4d53","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? 200 15ms","method":"GET","requestID":"54a07990-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:30.053241670Z"}]},"request_id":"08409bdb-cece-470c-8b30-a98b1dbff93a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8093438} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Building connection plan","requestID":"2b06d31d473493c458b63b131f06bec0"} 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":"d9cd48ac-d014-4571-b3fe-088685d4de27"},{"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":"a2f4182a-add5-4c63-b686-b590c48d0910"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f8ad273d-2fbe-444e-a139-559717a6f6af"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2b06d31d473493c458b63b131f06bec0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c3d2731cf3ad1133656680e405cc4d53","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"54a338b0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"54a338b0-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3d2731cf3ad1133656680e405cc4d53"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"54a338b0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3d2731cf3ad1133656680e405cc4d53"} device-1 | {"level":"info","message":"GET /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001? 200 11ms","method":"GET","requestID":"c3d2731cf3ad1133656680e405cc4d53","responseTime":11,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c?id=61dad84f-6c28-4291-aab3-e25374a38e44","ws://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c?id=05f1ebe7-bd55-424b-93f3-2cc59ced6aad"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"2b06d31d473493c458b63b131f06bec0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.93897,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d07a7f49-9dbc-4e86-acfd-37b8b79b2df2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8260748} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a2c11fa-1150-492d-8913-38aaf3ae420f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8264894} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2'","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2'","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"54a3ade0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"54a90510-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"61dad84f-6c28-4291-aab3-e25374a38e44\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\"","requestID":"54a90510-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"54a90510-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"54a92c20-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"05f1ebe7-bd55-424b-93f3-2cc59ced6aad\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\"","requestID":"54a92c20-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"54a92c20-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"05f1ebe7-bd55-424b-93f3-2cc59ced6aad\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"05f1ebe7-bd55-424b-93f3-2cc59ced6aad\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"234c61b137f7ef1f83b2725a4c16b8bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"234c61b137f7ef1f83b2725a4c16b8bf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"}}},"level":"info","message":"received a callback","requestID":"234c61b137f7ef1f83b2725a4c16b8bf"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"234c61b137f7ef1f83b2725a4c16b8bf","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"234c61b137f7ef1f83b2725a4c16b8bf"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2b06d31d473493c458b63b131f06bec0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54ad71e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f691ecb3-4f69-406d-b1bc-86273f1f556b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8824897} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.497014,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54ad71e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54ad71e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54ad71e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling 200 11ms","method":"POST","requestID":"54ad71e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26ef4086cdbf5086f58d43425065e12b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26ef4086cdbf5086f58d43425065e12b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"}}},"level":"info","message":"received a callback","requestID":"26ef4086cdbf5086f58d43425065e12b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54af94c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d3bd141-4046-4aa8-bb4a-890016fcf173","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.8964784} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"54b03100-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.527016,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54af94c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54af94c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa702719-7334-4c1a-990f-252d7061bfe2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"294a7ba1-3525-4399-bd36-a2eecdfb5dda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.9009607} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.295555,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54af94c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54b03100-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling 200 10ms","method":"POST","requestID":"54af94c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54b03100-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"54b03100-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2 200 8ms","method":"GET","requestID":"54b03100-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"26ef4086cdbf5086f58d43425065e12b","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"26ef4086cdbf5086f58d43425065e12b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54b3b370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3513e686-c135-46b5-aa3a-1258c9b39028","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.9236972} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.115239,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54b3b370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54b3b370-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54b3b370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling 200 8ms","method":"POST","requestID":"54b3b370-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54b53a10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"013fa180-4ef7-4470-ae04-ec50e6183b35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.9336615} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.006151,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54b53a10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54b53a10-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54b53a10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling 200 11ms","method":"POST","requestID":"54b53a10-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a955c73b-3155-43da-8104-5aaf37c8481d","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.850653,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a955c73b-3155-43da-8104-5aaf37c8481d","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3"} experiment-1 | {"level":"info","message":"GET /experiments/a955c73b-3155-43da-8104-5aaf37c8481d 200 10ms","method":"GET","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3","responseTime":10,"status":200,"url":"/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a955c73b-3155-43da-8104-5aaf37c8481d HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31e8956ba71f5c5ca501eb2e9e7f11b3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE","level":"info","message":"auth send jwt","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a7fafdf4e51dda54b3e2263443092b4d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a955c73b-3155-43da-8104-5aaf37c8481d","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667973,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a7fafdf4e51dda54b3e2263443092b4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7fafdf4e51dda54b3e2263443092b4d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Attempting to finish experiment","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.182316,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541050,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MH0.Co7nSWtNM-1iflOwThrz1scVtP9GDpdpvZ0zSEDctaE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c?id=61dad84f-6c28-4291-aab3-e25374a38e44 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3c8bdcc9a04e027b011baec007be790b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c?id=05f1ebe7-bd55-424b-93f3-2cc59ced6aad HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"6905c25679059a4d2ab69fca8eb6e5c7"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"61dad84f-6c28-4291-aab3-e25374a38e44\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"61dad84f-6c28-4291-aab3-e25374a38e44\" from room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"05f1ebe7-bd55-424b-93f3-2cc59ced6aad\" in room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"05f1ebe7-bd55-424b-93f3-2cc59ced6aad\" from room \"http://localhost/rooms/f71627ef-3e2a-4741-b3c5-4de54b046c8c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7efae3d9dd31f201655fd66deb8ef68a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7efae3d9dd31f201655fd66deb8ef68a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e707722d64f374824bde7bdbbf3aa7f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e707722d64f374824bde7bdbbf3aa7f8","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"}}},"level":"info","message":"received a callback","requestID":"7efae3d9dd31f201655fd66deb8ef68a"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa702719-7334-4c1a-990f-252d7061bfe2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa702719-7334-4c1a-990f-252d7061bfe2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"42148356-0951-4919-8f80-c2e58bf1fe91","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.9961343} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e19c381-e34a-49cc-8306-a6beba7c072f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541050.9964602} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"}}},"level":"info","message":"received a callback","requestID":"e707722d64f374824bde7bdbbf3aa7f8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"fa702719-7334-4c1a-990f-252d7061bfe2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2 204 36ms","method":"DELETE","requestID":"54bd2950-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":204,"url":"/peerconnections/fa702719-7334-4c1a-990f-252d7061bfe2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"},"level":"info","message":"Successfully finished experiment","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54c4f180-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F09adb385-4b39-4579-979d-8b2643e9794c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"113a990c-b00c-445b-ae4a-f64b48becf7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.0371573} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.985662,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54c4f180-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54c4f180-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54c4f180-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling 200 9ms","method":"POST","requestID":"54c4f180-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/09adb385-4b39-4579-979d-8b2643e9794c/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa955c73b-3155-43da-8104-5aaf37c8481d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa955c73b-3155-43da-8104-5aaf37c8481d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5671825c-7da2-4b7a-89ae-ca1f6321836b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.0432718} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54c69f30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d68556a-1155-4e1c-b5e0-bf0a6faab62e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.0435536} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a7fafdf4e51dda54b3e2263443092b4d","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5126133-81d3-4848-a39f-c7a49c000359","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.048084} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.543764,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"54c69f30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54c69f30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54c69f30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling 200 9ms","method":"POST","requestID":"54c69f30-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a955c73b-3155-43da-8104-5aaf37c8481d","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a955c73b-3155-43da-8104-5aaf37c8481d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7fafdf4e51dda54b3e2263443092b4d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.521","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f48c2bc574cd12431fed25f18a3ccb8e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.532","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c4e483a09ed56acb1e1a1a2697656c36"} experiment-1 | {"level":"info","message":"DELETE /experiments/a955c73b-3155-43da-8104-5aaf37c8481d 204 131ms","method":"DELETE","requestID":"a7fafdf4e51dda54b3e2263443092b4d","responseTime":131,"status":204,"url":"/experiments/a955c73b-3155-43da-8104-5aaf37c8481d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"7efae3d9dd31f201655fd66deb8ef68a","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"7efae3d9dd31f201655fd66deb8ef68a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"e707722d64f374824bde7bdbbf3aa7f8","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"e707722d64f374824bde7bdbbf3aa7f8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/09adb385-4b39-4579-979d-8b2643e9794c' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"595a5611599af32b489057b02e9f8d34"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"595a5611599af32b489057b02e9f8d34","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"595a5611599af32b489057b02e9f8d34"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.851661,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"595a5611599af32b489057b02e9f8d34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","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/2b72a4df-f329-4ee5-8a8c-6a16c4c8c001' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7aebdab6-f5d9-49f9-95f9-ba721713ff2f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.129851} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"546e3f29-87ed-4976-b38b-e6737a0529a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.134493} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"86351eaf-21b6-45d6-9835-b6d4a640c87a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.145085} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59f0a30e-7819-48d8-8e0d-86271d6bf0b7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.145815} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"f362b39b-c313-41ee-9ee3-bc5bc4563e00","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.1506224} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"595a5611599af32b489057b02e9f8d34"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"595a5611599af32b489057b02e9f8d34","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"595a5611599af32b489057b02e9f8d34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"fbe2eed1748f72134f762f20d330aff4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fbe2eed1748f72134f762f20d330aff4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.935123,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fbe2eed1748f72134f762f20d330aff4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"73c00972-8297-464c-a14b-4e855f3af679","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.1752298} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3880871-5a2d-46a3-92d0-ade943ba71d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.1799707} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"5ed6ed5b-d291-44f3-919d-15691f7e81e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.1952014} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d19888d-6daa-45d1-ab85-5fb42e628083","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.195469} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"6c7d01b6-370c-44db-a86d-6c5355a1f018","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.2000248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fbe2eed1748f72134f762f20d330aff4"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbe2eed1748f72134f762f20d330aff4"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"fbe2eed1748f72134f762f20d330aff4","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"dbd8df41802dddd435abd551c29ce4db"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"dbd8df41802dddd435abd551c29ce4db","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"76cbcfe909a2db604c2850fb42059702"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"76cbcfe909a2db604c2850fb42059702","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dbd8df41802dddd435abd551c29ce4db"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"76cbcfe909a2db604c2850fb42059702"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917809,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"dbd8df41802dddd435abd551c29ce4db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dbd8df41802dddd435abd551c29ce4db","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.765711,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76cbcfe909a2db604c2850fb42059702","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76cbcfe909a2db604c2850fb42059702","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"c896078c-98bf-48d6-9f2b-d56fff6e43c2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.6871288} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dbd8df41802dddd435abd551c29ce4db","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"56943c29-2c98-4ed3-b48f-e349f2ce3af1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.689465} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76cbcfe909a2db604c2850fb42059702","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ba435a3-610f-447c-9028-cc4d015d2b47","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.6908257} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"dbd8df41802dddd435abd551c29ce4db","responseTime":2,"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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffc0f64b-63f9-4cb2-a62c-8480606366e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.6943526} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"76cbcfe909a2db604c2850fb42059702","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"e4b7e35d-f0d9-44d6-8e15-63e926f875db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.7016783} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dbd8df41802dddd435abd551c29ce4db","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dbd8df41802dddd435abd551c29ce4db"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"dbd8df41802dddd435abd551c29ce4db"} device-1 | {"level":"info","message":"PATCH /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966 200 25ms","method":"PATCH","requestID":"dbd8df41802dddd435abd551c29ce4db","responseTime":25,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"e4fdbea1fdec5357ad2c671010efb340"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e4fdbea1fdec5357ad2c671010efb340","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e4fdbea1fdec5357ad2c671010efb340"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"fb5e7034-cdad-431c-87f5-0b8c9322fe5a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.7122104} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76cbcfe909a2db604c2850fb42059702","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948229,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"76cbcfe909a2db604c2850fb42059702"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e4fdbea1fdec5357ad2c671010efb340","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4fdbea1fdec5357ad2c671010efb340","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6349c39d-2713-4efc-b651-684330cbbe52 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"76cbcfe909a2db604c2850fb42059702"} device-1 | {"level":"info","message":"PATCH /devices/6349c39d-2713-4efc-b651-684330cbbe52 200 36ms","method":"PATCH","requestID":"76cbcfe909a2db604c2850fb42059702","responseTime":36,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"e43aa824fad9a207c2bf87e07d0a9718"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e43aa824fad9a207c2bf87e07d0a9718","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e43aa824fad9a207c2bf87e07d0a9718"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695526,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e43aa824fad9a207c2bf87e07d0a9718","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e43aa824fad9a207c2bf87e07d0a9718","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e4fdbea1fdec5357ad2c671010efb340"} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/websocket 200 18ms","method":"POST","requestID":"e4fdbea1fdec5357ad2c671010efb340","responseTime":18,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e4fdbea1fdec5357ad2c671010efb340"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e43aa824fad9a207c2bf87e07d0a9718"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e43aa824fad9a207c2bf87e07d0a9718"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/websocket 200 17ms","method":"POST","requestID":"e43aa824fad9a207c2bf87e07d0a9718","responseTime":17,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"04a148bba11a868320fa4f9233888aec"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04a148bba11a868320fa4f9233888aec","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04a148bba11a868320fa4f9233888aec"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866645,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"04a148bba11a868320fa4f9233888aec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"04a148bba11a868320fa4f9233888aec","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"a0837532-a724-4058-834a-8af748a0ac0a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.777611} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04a148bba11a868320fa4f9233888aec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04a148bba11a868320fa4f9233888aec"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"04a148bba11a868320fa4f9233888aec"} device-1 | {"level":"info","message":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? 200 14ms","method":"GET","requestID":"04a148bba11a868320fa4f9233888aec","responseTime":14,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"c01b9c6d4722659ac7c568dbf2e6129e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c01b9c6d4722659ac7c568dbf2e6129e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c01b9c6d4722659ac7c568dbf2e6129e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929066,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c01b9c6d4722659ac7c568dbf2e6129e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c01b9c6d4722659ac7c568dbf2e6129e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"db4a7939-8707-408d-a3b8-47df1821080f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.797794} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c01b9c6d4722659ac7c568dbf2e6129e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c01b9c6d4722659ac7c568dbf2e6129e"} device-1 | {"level":"info","message":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? 200 15ms","method":"GET","requestID":"c01b9c6d4722659ac7c568dbf2e6129e","responseTime":15,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c01b9c6d4722659ac7c568dbf2e6129e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"0e308721ba207a75eff30b39f7907809"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e308721ba207a75eff30b39f7907809","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0e308721ba207a75eff30b39f7907809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.891359,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0e308721ba207a75eff30b39f7907809","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e308721ba207a75eff30b39f7907809","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to run experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to book experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully booked experiment","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840925,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958282,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"277c1494-093d-4d20-bb93-d452bb1daa3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.8562307} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"0c5c485d-7336-4289-9cad-ed5100a7130f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.8572025} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? 200 16ms","method":"GET","requestID":"55412660-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? 200 15ms","method":"GET","requestID":"55417480-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Setting up experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully set up experiment","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"554963c0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully running experiment","requestID":"0e308721ba207a75eff30b39f7907809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814487,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.584043,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.902494,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c9724cd-1e0c-49fe-82bf-5d82d950f64a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9059384} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"554963c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","rebac_allow":false,"scope_allow":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":"554963c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"86dccbe4-fe32-408e-94b3-d6f1579158df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.909471} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"e2fc9f8e-4bc2-4f2d-bdcd-4154a2ab512c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9121945} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"554963c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling 200 14ms","method":"POST","requestID":"554963c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"554bfbd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? 200 21ms","method":"GET","requestID":"554915a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} device-1 | {"level":"info","message":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? 200 21ms","method":"GET","requestID":"55493cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1e7ae6d-e42a-4cd4-82b9-d1f0997df3d0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.922129} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"554cbf20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.906971,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"554bfbd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","rebac_allow":false,"scope_allow":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":"554bfbd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fece227ee-b839-4d4d-b1f7-5d81236f5ceb#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fece227ee-b839-4d4d-b1f7-5d81236f5ceb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"bcea3d04-5d2a-4d30-8308-51e590a3c9ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9257185} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"050bb094-fa53-406f-8d64-e9a439e962fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.926059} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"554bfbd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling 200 13ms","method":"POST","requestID":"554bfbd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"0e308721ba207a75eff30b39f7907809","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17ca41c0-e405-4210-85f7-a1fba3f54bc5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.930838} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.597623,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"554cbf20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"554cbf20-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"554cbf20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling 200 14ms","method":"POST","requestID":"554cbf20-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"554f3020-86cf-11ef-b00e-2fb111b9dda5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e308721ba207a75eff30b39f7907809"} experiment-1 | {"level":"info","message":"POST /experiments? 201 128ms","method":"POST","requestID":"0e308721ba207a75eff30b39f7907809","responseTime":128,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1b36479-d936-4a99-9545-4a5b73f55b25","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9434288} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"b81a3c000dc1a7f356565d98ee92ce89"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.560015,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b81a3c000dc1a7f356565d98ee92ce89","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"554f3020-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","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":"b81a3c000dc1a7f356565d98ee92ce89"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"554f3020-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664636,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"554f3020-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b81a3c000dc1a7f356565d98ee92ce89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling 200 9ms","method":"POST","requestID":"554f3020-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b81a3c000dc1a7f356565d98ee92ce89","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"29ae4634-a996-4271-a092-c74b061dd3ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9513206} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b81a3c000dc1a7f356565d98ee92ce89","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586529,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.599167,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b81a3c000dc1a7f356565d98ee92ce89"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b81a3c000dc1a7f356565d98ee92ce89"} device-1 | {"level":"info","message":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? 200 13ms","method":"GET","requestID":"b81a3c000dc1a7f356565d98ee92ce89","responseTime":13,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.145039896Z"}]},"request_id":"7648b55f-8452-47f7-b57c-83d57720b61b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9572256} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"ee261610-d72f-4cc1-a5f3-db1e8ec3d828","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9580023} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0","level":"info","message":"auth send jwt","requestID":"7994fcaa1b5831a0fef68d430ef35a4f"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7994fcaa1b5831a0fef68d430ef35a4f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966? 200 13ms","method":"GET","requestID":"5550ddd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? 200 12ms","method":"GET","requestID":"555104e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7994fcaa1b5831a0fef68d430ef35a4f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Building connection plan","requestID":"0e308721ba207a75eff30b39f7907809"} 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":"3ad157dd-c0e1-4585-a2d9-c873ac765774"},{"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":"85d0d33b-6757-45eb-8f77-433d25d434c2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ca64b707-b3d1-494c-ae74-f4a48d7dec14"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0e308721ba207a75eff30b39f7907809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"55534ed0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"55534ed0-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68211,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"55534ed0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7994fcaa1b5831a0fef68d430ef35a4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7994fcaa1b5831a0fef68d430ef35a4f","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157?id=3bf3bf80-459d-4edd-a11d-9a96a622a77b","ws://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157?id=0c8fbed5-e213-4c2a-bfb8-8160e1cb5e7a"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:31.195162629Z"}]},"request_id":"6acadbc4-00b3-4727-bbd0-803807ad4431","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.969502} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7994fcaa1b5831a0fef68d430ef35a4f","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7994fcaa1b5831a0fef68d430ef35a4f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.701063,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:31Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7994fcaa1b5831a0fef68d430ef35a4f"} device-1 | {"level":"info","message":"GET /devices/6349c39d-2713-4efc-b651-684330cbbe52? 200 9ms","method":"GET","requestID":"7994fcaa1b5831a0fef68d430ef35a4f","responseTime":9,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541051,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1MX0.wSWfVOupH6VmmzMZj3g__96gxZwgHne6WsQQgyYoFd0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"eff3c0dc-37e6-4042-aed9-dc58dd7aeed8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.97896} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d55555f5-d49a-4302-b060-25dcc55ab356","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541051.9792008} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151'","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151'","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5553c400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"55587ef0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0c8fbed5-e213-4c2a-bfb8-8160e1cb5e7a\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\"","requestID":"55587ef0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"55587ef0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5558a600-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\"","requestID":"5558a600-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5558a600-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83b74d2bbfa46b07606fb223073253ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"83b74d2bbfa46b07606fb223073253ec","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"}}},"level":"info","message":"received a callback","requestID":"83b74d2bbfa46b07606fb223073253ec"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"83b74d2bbfa46b07606fb223073253ec","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"83b74d2bbfa46b07606fb223073253ec"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0e308721ba207a75eff30b39f7907809"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"555d60f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89239778-19b4-4bdc-b3e0-19b62ea5d98f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.0356047} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a12de0a272f6d7185405c22a99355aa6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:58336","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.253421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a12de0a272f6d7185405c22a99355aa6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"555d60f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"}}},"level":"info","message":"received a callback","requestID":"a12de0a272f6d7185405c22a99355aa6"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"555d60f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"555ee790-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"555d60f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb6454e3-710c-4d05-93a0-5d8f031e6151","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"243fdf8f-9fc6-4477-b506-2f1333916331","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.0456154} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling 200 15ms","method":"POST","requestID":"555d60f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.331857,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"555ee790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151","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":"555ee790-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55602010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"555ee790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151 200 10ms","method":"GET","requestID":"555ee790-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0de0f01-6511-451d-8946-69d8c52814ee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.0538375} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.620393,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"55602010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55602010-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55602010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling 200 8ms","method":"POST","requestID":"55602010-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"a12de0a272f6d7185405c22a99355aa6","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"a12de0a272f6d7185405c22a99355aa6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5562b820-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa978f27-72e5-448e-b448-bf4553df549c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.0709455} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.221681,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5562b820-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5562b820-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5562b820-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling 200 8ms","method":"POST","requestID":"5562b820-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55643ec0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1563aedb-88e2-4f71-8118-01f66d6bbb4e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.0808983} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.057225,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"55643ec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55643ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55643ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling 200 8ms","method":"POST","requestID":"55643ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU","level":"info","message":"auth send jwt","requestID":"f5bb1e85b94f7c133cf5207849c57ca7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f5bb1e85b94f7c133cf5207849c57ca7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","requestID":"f5bb1e85b94f7c133cf5207849c57ca7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.027241,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f5bb1e85b94f7c133cf5207849c57ca7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541052,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f5bb1e85b94f7c133cf5207849c57ca7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","requestID":"f5bb1e85b94f7c133cf5207849c57ca7"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5bb1e85b94f7c133cf5207849c57ca7"} experiment-1 | {"level":"info","message":"GET /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb 200 11ms","method":"GET","requestID":"f5bb1e85b94f7c133cf5207849c57ca7","responseTime":11,"status":200,"url":"/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU","level":"info","message":"auth send jwt","requestID":"8b37662610df6db68d2295d3acb3b999"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8b37662610df6db68d2295d3acb3b999","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","requestID":"8b37662610df6db68d2295d3acb3b999"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.690873,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8b37662610df6db68d2295d3acb3b999","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541052,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8b37662610df6db68d2295d3acb3b999","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Attempting to finish experiment","requestID":"8b37662610df6db68d2295d3acb3b999"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.712423,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541052,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157?id=3bf3bf80-459d-4edd-a11d-9a96a622a77b HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.142","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c8a136a04dc0f5d516901fc33e1594bb"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157?id=0c8fbed5-e213-4c2a-bfb8-8160e1cb5e7a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.143","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fe87c4522586d23ef53d68d12dc55421"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3bf3bf80-459d-4edd-a11d-9a96a622a77b\" from room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0c8fbed5-e213-4c2a-bfb8-8160e1cb5e7a\" in room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0c8fbed5-e213-4c2a-bfb8-8160e1cb5e7a\" from room \"http://localhost/rooms/a69ffdc0-1c62-4968-940a-b9d3d8da2157\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"706a981a996529c1d6f8d3d5498f324c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb6454e3-710c-4d05-93a0-5d8f031e6151': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcb6454e3-710c-4d05-93a0-5d8f031e6151","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"06815ec4-ff91-4389-96e3-7931da7f8cf4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.144844} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"706a981a996529c1d6f8d3d5498f324c","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1da60936beff704d76e9f65f7023b81a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20be088a-bf6f-4f0a-bab8-1403a6941df5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.1452024} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1da60936beff704d76e9f65f7023b81a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"}}},"level":"info","message":"received a callback","requestID":"706a981a996529c1d6f8d3d5498f324c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"}}},"level":"info","message":"received a callback","requestID":"1da60936beff704d76e9f65f7023b81a"} device-1 | {"data":{"peerconnection":"cb6454e3-710c-4d05-93a0-5d8f031e6151","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151 204 30ms","method":"DELETE","requestID":"556cca40-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":204,"url":"/peerconnections/cb6454e3-710c-4d05-93a0-5d8f031e6151"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"},"level":"info","message":"Successfully finished experiment","requestID":"8b37662610df6db68d2295d3acb3b999"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5573f630-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6349c39d-2713-4efc-b651-684330cbbe52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45fca82f-9183-43b2-858f-ae057e3b9875","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.1845696} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.965703,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5573f630-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6349c39d-2713-4efc-b651-684330cbbe52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5573f630-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5573f630-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling 200 10ms","method":"POST","requestID":"5573f630-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/6349c39d-2713-4efc-b651-684330cbbe52/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5575caf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fece227ee-b839-4d4d-b1f7-5d81236f5ceb': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fece227ee-b839-4d4d-b1f7-5d81236f5ceb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"6bb2c3f6-c968-4d46-9dc8-e88988141b2b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.1927202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07ecf4df-476f-4380-92e3-779f7dbcbd41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.192876} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8b37662610df6db68d2295d3acb3b999","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef811cd3-87bd-450f-b08f-4c6dcf5b4966","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebdbcbd3-249e-4d37-8cf4-44e3aaeb4056","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.195543} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.826743,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5575caf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5575caf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5575caf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling 200 9ms","method":"POST","requestID":"5575caf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb","requestID":"8b37662610df6db68d2295d3acb3b999"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb 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":"8b37662610df6db68d2295d3acb3b999"} experiment-1 | {"level":"info","message":"DELETE /experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb 204 129ms","method":"DELETE","requestID":"8b37662610df6db68d2295d3acb3b999","responseTime":129,"status":204,"url":"/experiments/ece227ee-b839-4d4d-b1f7-5d81236f5ceb"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.512","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d09e9787307cd1578d6f4c4e52b2d458"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.524","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"746502801c2c187e12562f2eb27be805"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"706a981a996529c1d6f8d3d5498f324c","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"706a981a996529c1d6f8d3d5498f324c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"1da60936beff704d76e9f65f7023b81a","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"1da60936beff704d76e9f65f7023b81a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU","level":"info","message":"auth send jwt","requestID":"c5ac4bc360909c01e155a2f590d236ff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c5ac4bc360909c01e155a2f590d236ff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c5ac4bc360909c01e155a2f590d236ff"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ef811cd3-87bd-450f-b08f-4c6dcf5b4966' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.922258,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c5ac4bc360909c01e155a2f590d236ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541052,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","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/6349c39d-2713-4efc-b651-684330cbbe52' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"963be25b-d43b-4648-acfe-1fbc3b2a3570","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.2807157} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d612c8ae-30c1-48e2-a03e-5b1077df5618","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.2862957} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a456a5d7-4d45-4341-81eb-92fe5f9c2f6f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.2988267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10d6bba0-272c-4387-b973-9242a6e4add0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.299643} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"639d96e1-ec82-4f19-b94c-b2afc1207159","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.3095052} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c5ac4bc360909c01e155a2f590d236ff"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5ac4bc360909c01e155a2f590d236ff"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"c5ac4bc360909c01e155a2f590d236ff","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU","level":"info","message":"auth send jwt","requestID":"adad758eeda81035c7a8d7e196d8a64b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"adad758eeda81035c7a8d7e196d8a64b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"adad758eeda81035c7a8d7e196d8a64b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.962359,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"adad758eeda81035c7a8d7e196d8a64b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541052,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1Mn0.UhjbIIvn7KzI9r-aeRUZSQdS_3uakcYiWf2PLuMmobU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"73f6de0e-db7a-40a4-b214-bfc403224c93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.3408031} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b050ea6f-2711-4db0-bb4e-bc0acaba34c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.3462617} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"618b3fde-c51f-41be-a67e-2f3935998569","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.362086} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eef1674e-9562-413b-a28e-5b0b8a8ed6cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.362234} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"22cec8a4-8910-4884-87ac-577b9c26946d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541052.3670716} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"adad758eeda81035c7a8d7e196d8a64b"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"adad758eeda81035c7a8d7e196d8a64b","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"adad758eeda81035c7a8d7e196d8a64b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b3729aa409cb3505d21978d5e1f921f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b3729aa409cb3505d21978d5e1f921f1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/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":"b3729aa409cb3505d21978d5e1f921f1"} device-1 | {"level":"info","message":"OPTIONS /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/websocket 200 1ms","method":"OPTIONS","requestID":"b3729aa409cb3505d21978d5e1f921f1","responseTime":1,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59ce04933f1e58fc2f9fdfef97741a6f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"59ce04933f1e58fc2f9fdfef97741a6f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2f79df33-6b46-4424-a9be-f36764b61774/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":"59ce04933f1e58fc2f9fdfef97741a6f"} device-1 | {"level":"info","message":"OPTIONS /devices/2f79df33-6b46-4424-a9be-f36764b61774/websocket 200 1ms","method":"OPTIONS","requestID":"59ce04933f1e58fc2f9fdfef97741a6f","responseTime":1,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"1ad11510d05fd509d20eafc016059b87"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1ad11510d05fd509d20eafc016059b87","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1ad11510d05fd509d20eafc016059b87"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"7b364842eafeb4e96df68105786b1087"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b364842eafeb4e96df68105786b1087","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7b364842eafeb4e96df68105786b1087"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.371445,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1ad11510d05fd509d20eafc016059b87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ad11510d05fd509d20eafc016059b87","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.664117,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7b364842eafeb4e96df68105786b1087","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b364842eafeb4e96df68105786b1087","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1ad11510d05fd509d20eafc016059b87"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/websocket 200 22ms","method":"POST","requestID":"1ad11510d05fd509d20eafc016059b87","responseTime":22,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/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":"1ad11510d05fd509d20eafc016059b87"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7b364842eafeb4e96df68105786b1087"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7b364842eafeb4e96df68105786b1087"} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/websocket 200 29ms","method":"POST","requestID":"7b364842eafeb4e96df68105786b1087","responseTime":29,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2242555db2a7e485033dd98c55dd21c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2242555db2a7e485033dd98c55dd21c0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2242555db2a7e485033dd98c55dd21c0"} device-1 | {"level":"info","message":"OPTIONS /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 1ms","method":"OPTIONS","requestID":"2242555db2a7e485033dd98c55dd21c0","responseTime":1,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"2eebba61b97e906057fd56e4de208475"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2eebba61b97e906057fd56e4de208475","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6def11bfce852ac114168499d522bdca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2eebba61b97e906057fd56e4de208475"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6def11bfce852ac114168499d522bdca","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2f79df33-6b46-4424-a9be-f36764b61774? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6def11bfce852ac114168499d522bdca"} device-1 | {"level":"info","message":"OPTIONS /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 1ms","method":"OPTIONS","requestID":"6def11bfce852ac114168499d522bdca","responseTime":1,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.184888,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2eebba61b97e906057fd56e4de208475","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2eebba61b97e906057fd56e4de208475","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"5d7138b7-c533-4634-a325-a5d5ee4c374b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.4542184} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2eebba61b97e906057fd56e4de208475","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.492223,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4be8e9ff-d2ed-47f1-8f11-a21001946da1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.4628747} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2eebba61b97e906057fd56e4de208475","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"9e2255e6-45a8-42c6-8b7c-8eee82ed6262","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.4681337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd1d4a6b-1249-499c-b0b3-1fad78a6dd2b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.4754992} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"528ec5f1-42c5-4318-82fc-1bb12c87ca59","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.4809103} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2eebba61b97e906057fd56e4de208475","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2eebba61b97e906057fd56e4de208475"} device-1 | {"level":"info","message":"PATCH /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 44ms","method":"PATCH","requestID":"2eebba61b97e906057fd56e4de208475","responseTime":44,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2eebba61b97e906057fd56e4de208475"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"29a840ef-eaaf-4a5f-9ffe-a19d69339aa4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.492809} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2f79df33-6b46-4424-a9be-f36764b61774? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0"} device-1 | {"level":"info","message":"PATCH /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 44ms","method":"PATCH","requestID":"e9066b3d79bf3eeb61e4554c3e22c9c0","responseTime":44,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"fb0cf743067b710dcd40942ab2cb699f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fb0cf743067b710dcd40942ab2cb699f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb0cf743067b710dcd40942ab2cb699f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.404419,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fb0cf743067b710dcd40942ab2cb699f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb0cf743067b710dcd40942ab2cb699f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"35365afd-8b56-498d-a10f-7d5bf029dfbe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.5216796} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fb0cf743067b710dcd40942ab2cb699f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb0cf743067b710dcd40942ab2cb699f"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb0cf743067b710dcd40942ab2cb699f"} device-1 | {"level":"info","message":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 17ms","method":"GET","requestID":"fb0cf743067b710dcd40942ab2cb699f","responseTime":17,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"1118d06bc8a2d5709f2f437bdb330ea0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1118d06bc8a2d5709f2f437bdb330ea0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1118d06bc8a2d5709f2f437bdb330ea0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009067,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1118d06bc8a2d5709f2f437bdb330ea0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1118d06bc8a2d5709f2f437bdb330ea0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"e5da8772-55cb-4a27-849c-039ed197504f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.5453339} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1118d06bc8a2d5709f2f437bdb330ea0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1118d06bc8a2d5709f2f437bdb330ea0"} device-1 | {"level":"info","message":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 15ms","method":"GET","requestID":"1118d06bc8a2d5709f2f437bdb330ea0","responseTime":15,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1118d06bc8a2d5709f2f437bdb330ea0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"de088762be92ae2d51291dcd1536eda8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"de088762be92ae2d51291dcd1536eda8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"de088762be92ae2d51291dcd1536eda8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.284125,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"de088762be92ae2d51291dcd1536eda8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de088762be92ae2d51291dcd1536eda8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to run experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to book experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully booked experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.001564,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.370558,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"014ef9d8-3496-45f5-b093-0509dabc4ec8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.611074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"afd03b66-27a8-4daf-a177-528b0632a19f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6123118} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 19ms","method":"GET","requestID":"56e53970-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 18ms","method":"GET","requestID":"56e58790-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Setting up experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully set up experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56efc0c0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully running experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245574,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113746,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52638","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.599327,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5ccf1c2-a222-4ad8-beb6-a807ebe05d89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.676346} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56efc0c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","rebac_allow":false,"scope_allow":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":"56efc0c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"94dde58f-c303-4ea8-b860-4a4d785dc73d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6808639} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56efc0c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"aa097b73-b70f-4e70-bba8-ea9d4afcb323","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6846943} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling 200 17ms","method":"POST","requestID":"56efc0c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56f2ce00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 27ms","method":"GET","requestID":"56ef4b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 26ms","method":"GET","requestID":"56ef99b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79fcc06c-603c-4eea-9b53-6d1c5a89a9de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6937804} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.221485,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56f2ce00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"56f2ce00-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56f40680-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce0d5944-2fdb-40bc-9c07-de324dfab0e0#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce0d5944-2fdb-40bc-9c07-de324dfab0e0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"104bcf5c-f886-472b-a12f-5cf692d44451","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6956868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"501c1f64-b4f7-4926-9c1f-d73f92be1111","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.6962554} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"de088762be92ae2d51291dcd1536eda8","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56f2ce00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling 200 12ms","method":"POST","requestID":"56f2ce00-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"faeb3e62-a69e-4842-b571-a43fe2efb3e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7027948} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.324507,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56f40680-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"56f40680-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56f40680-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling 200 12ms","method":"POST","requestID":"56f40680-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"de088762be92ae2d51291dcd1536eda8"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"de088762be92ae2d51291dcd1536eda8","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56f65070-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"4477743e13bae641c484e547ac5baf02"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4477743e13bae641c484e547ac5baf02","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4477743e13bae641c484e547ac5baf02"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4adebdbf-685e-4ae7-87b6-37364fec886b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7168932} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.244596,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927319,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56f65070-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"56f65070-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4477743e13bae641c484e547ac5baf02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4477743e13bae641c484e547ac5baf02","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56f65070-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling 200 12ms","method":"POST","requestID":"56f65070-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"eba394ee-bdd0-412a-8397-71fa6e336630","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7241244} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4477743e13bae641c484e547ac5baf02","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4477743e13bae641c484e547ac5baf02"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911038,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 16ms","method":"GET","requestID":"4477743e13bae641c484e547ac5baf02","responseTime":16,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4477743e13bae641c484e547ac5baf02"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"35e3196e3a461d72546e0a678b7072d8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"35e3196e3a461d72546e0a678b7072d8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35e3196e3a461d72546e0a678b7072d8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.298779778Z"}]},"request_id":"72e11d64-8999-44ea-844b-10bb82c93221","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7358944} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"dc9dc0ea-b88f-4978-806a-2d8b4d3e58b2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.737121} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.013076,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"GET /devices/2f79df33-6b46-4424-a9be-f36764b61774? 200 15ms","method":"GET","requestID":"56f89a60-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35e3196e3a461d72546e0a678b7072d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"35e3196e3a461d72546e0a678b7072d8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 18ms","method":"GET","requestID":"56f8c170-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:32.362057766Z"}]},"request_id":"b3850c3e-bae2-4910-88d1-4882bde9cc50","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7454202} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Building connection plan","requestID":"de088762be92ae2d51291dcd1536eda8"} 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":"b07a0912-b3d6-4ee6-92ac-723477708d8f"},{"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":"853c9dc1-73fe-4cc0-a1c4-4ba89858787d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"12914ad5-1820-43b7-9ac8-bb7d30061d6a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"de088762be92ae2d51291dcd1536eda8"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"de088762be92ae2d51291dcd1536eda8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"35e3196e3a461d72546e0a678b7072d8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35e3196e3a461d72546e0a678b7072d8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} device-1 | {"level":"info","message":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? 200 16ms","method":"GET","requestID":"35e3196e3a461d72546e0a678b7072d8","responseTime":16,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"35e3196e3a461d72546e0a678b7072d8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.286622,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2707a761-abd4-459d-919e-cbcc21ec77a1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7601893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c16c64f-cde6-49cb-b435-57446b769e8c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.7603965} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f'","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f'","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} 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":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5","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":"56fbf5c0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"de088762be92ae2d51291dcd1536eda8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"570396e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e3dfe9d-56a0-447e-84fd-17c93b124024","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.8021057} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.341429,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"570396e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"570396e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"570396e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling 200 8ms","method":"POST","requestID":"570396e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5704f670-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0674cb9f-985c-4c88-820f-6d7987819c38","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.8114634} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.214721,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5704f670-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5704f670-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5704f670-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling 200 8ms","method":"POST","requestID":"5704f670-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling"} device-1 | {"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7354457017317069274 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:07bK\r\na=ice-pwd:bpslhnEWFnAtZycS5vawhzDX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A9:18:BE:77:7E:7B:6E:92:A9:DF:95:D3:EB:72:FB:30:0B:36:6E:AA:A0:E6:8B:85:B3:BE:6D:97:7E:49:F6:1E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1779159059570101856 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:hD7V\r\na=ice-pwd:W7W3reVWGa8epCbOFScKhVEw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D3:AE:A4:57:6C:94:25:6E:26:3B:FE:B4:0B:CD:C4:56:12:2B:A2:72:4B:FE:9E:7C:70:29:B9:40:F8:98:9B:18\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2609459514 1 udp 2113937151 f0deaab5-e063-40a9-9ee6-1df2f2ec1a49.local 37804 typ host generation 0 ufrag hD7V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:144871465 1 udp 1677729535 141.24.211.56 37804 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag hD7V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","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/f90a52a9-c147-4cd7-85bd-ddf745acb38d'"} device-1 | {"content":{"candidate":"candidate:1952675377 1 udp 2113937151 0917bdba-c425-4832-8bab-1e83cf4f7ea0.local 58156 typ host generation 0 ufrag 07bK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4031650894 1 udp 1677729535 141.24.211.56 58156 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 07bK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2f79df33-6b46-4424-a9be-f36764b61774","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/2f79df33-6b46-4424-a9be-f36764b61774'"} device-1 | {"device":"2f79df33-6b46-4424-a9be-f36764b61774","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/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53fa72626ab43c0d939e7f6116f5d578","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53fa72626ab43c0d939e7f6116f5d578","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"}}},"level":"info","message":"received a callback","requestID":"53fa72626ab43c0d939e7f6116f5d578"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"53fa72626ab43c0d939e7f6116f5d578","responseTime":4,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"2f79df33-6b46-4424-a9be-f36764b61774","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"53fa72626ab43c0d939e7f6116f5d578"} device-1 | {"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","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/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8606efb9ff57ebb38b4797ca5bc5dd5e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8606efb9ff57ebb38b4797ca5bc5dd5e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"}}},"level":"info","message":"received a callback","requestID":"8606efb9ff57ebb38b4797ca5bc5dd5e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5710dd50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad655223-91a0-4b22-aade-eb0d3676fd37","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.889033} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.189349,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5710dd50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","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":"5710dd50-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5710dd50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f 200 7ms","method":"GET","requestID":"5710dd50-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"8606efb9ff57ebb38b4797ca5bc5dd5e","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"8606efb9ff57ebb38b4797ca5bc5dd5e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5714fc00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c9977de-bd81-402a-a0d5-d4e96babfb41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.9162033} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.04723,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5714fc00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5714fc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5714fc00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling 200 7ms","method":"POST","requestID":"5714fc00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57165b90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"651d1217-462c-433c-a413-38f390779d32","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541054.9256713} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.000128,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"57165b90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57165b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57165b90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling 200 8ms","method":"POST","requestID":"57165b90-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"d961743c59c9c4cbfbb47876eec42c09"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d961743c59c9c4cbfbb47876eec42c09","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","requestID":"d961743c59c9c4cbfbb47876eec42c09"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.878309,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d961743c59c9c4cbfbb47876eec42c09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d961743c59c9c4cbfbb47876eec42c09","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","requestID":"d961743c59c9c4cbfbb47876eec42c09"} gateway-1 | {"time_local":"10/Oct/2024:06:17:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d961743c59c9c4cbfbb47876eec42c09"} experiment-1 | {"level":"info","message":"GET /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0 200 11ms","method":"GET","requestID":"d961743c59c9c4cbfbb47876eec42c09","responseTime":11,"status":200,"url":"/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU","level":"info","message":"auth send jwt","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.619175,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Attempting to finish experiment","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.762735,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541054,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NH0.n7lo4F0h66WtdsDTR_GdxcbghhZojXQ988XsMLe0ZqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","device":"f90a52a9-c147-4cd7-85bd-ddf745acb38d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","device":"2f79df33-6b46-4424-a9be-f36764b61774","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/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9446e60d01ab585489de329b95eb6804","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8795fc-80c4-46dd-a4cc-ad669c59aa2f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"341270c1-739f-46ca-af2f-35bb8d2c1abb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.0145288} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9446e60d01ab585489de329b95eb6804","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"970859a373cb97f20f3e9ab296456cff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"970859a373cb97f20f3e9ab296456cff","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"}}},"level":"info","message":"received a callback","requestID":"9446e60d01ab585489de329b95eb6804"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae1dc0a7-22e9-4fc3-b8ce-a7bd8e8a8188","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.014875} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"}}},"level":"info","message":"received a callback","requestID":"970859a373cb97f20f3e9ab296456cff"} device-1 | {"data":{"peerconnection":"7e8795fc-80c4-46dd-a4cc-ad669c59aa2f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f 204 33ms","method":"DELETE","requestID":"5721f450-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":204,"url":"/peerconnections/7e8795fc-80c4-46dd-a4cc-ad669c59aa2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"},"level":"info","message":"Successfully finished experiment","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"572a31b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff90a52a9-c147-4cd7-85bd-ddf745acb38d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f69dc5fd-b67f-4890-b52f-77bbc9947764","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.0578234} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.058116,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"572a31b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"572a31b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"572a31b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling 200 11ms","method":"POST","requestID":"572a31b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"572c5490-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce0d5944-2fdb-40bc-9c07-de324dfab0e0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fce0d5944-2fdb-40bc-9c07-de324dfab0e0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"29f2c57a-cf8c-4436-87e8-754915560498","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.066161} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0d94e90-6261-4934-a64e-d8143da7eaf5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.0663896} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f79df33-6b46-4424-a9be-f36764b61774","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7548da3d-aab6-4043-91d2-bd77983ed1f6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.0730267} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.854965,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"572c5490-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"572c5490-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"572c5490-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling 200 13ms","method":"POST","requestID":"572c5490-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/2f79df33-6b46-4424-a9be-f36764b61774/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8"} experiment-1 | {"level":"info","message":"DELETE /experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0 204 144ms","method":"DELETE","requestID":"ba015c54e2b2e7e07c7f0fa07694d8a8","responseTime":144,"status":204,"url":"/experiments/ce0d5944-2fdb-40bc-9c07-de324dfab0e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"9446e60d01ab585489de329b95eb6804","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"9446e60d01ab585489de329b95eb6804"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"970859a373cb97f20f3e9ab296456cff","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"970859a373cb97f20f3e9ab296456cff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NX0.kyRv0wc-eNFwTKlTQIGx34LN98nzdbloPMiDb2PO9To","level":"info","message":"auth send jwt","requestID":"efd634e3d35252eafdbf1f380de47e2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"efd634e3d35252eafdbf1f380de47e2d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3285","request_time":"0.737","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"36379cab245da05103d00a07d9c57a68"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.129454,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"efd634e3d35252eafdbf1f380de47e2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541055,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NX0.kyRv0wc-eNFwTKlTQIGx34LN98nzdbloPMiDb2PO9To"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.756","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ad24b7dd81372b6cb795fa9f799e3611"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2f79df33-6b46-4424-a9be-f36764b61774' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"957925aa-d59a-4349-b8cb-0f45b660ef54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.1602063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac9741d1-87d1-463c-981b-17a9927401fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.1644542} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f90a52a9-c147-4cd7-85bd-ddf745acb38d' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1fbbadff-5d51-4c04-a619-429032e287bb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.1747584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dcfb89a-d28c-4f02-998c-c595b1ec0fff","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.1749713} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"5a856dc6-24ab-476f-a416-8a499069fc0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.1783586} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"efd634e3d35252eafdbf1f380de47e2d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efd634e3d35252eafdbf1f380de47e2d"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"efd634e3d35252eafdbf1f380de47e2d","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NX0.kyRv0wc-eNFwTKlTQIGx34LN98nzdbloPMiDb2PO9To","level":"info","message":"auth send jwt","requestID":"db5673fa9e9f71d65ea578502bf7faba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"db5673fa9e9f71d65ea578502bf7faba","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"db5673fa9e9f71d65ea578502bf7faba"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.670572,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"db5673fa9e9f71d65ea578502bf7faba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541055,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1NX0.kyRv0wc-eNFwTKlTQIGx34LN98nzdbloPMiDb2PO9To"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"880346a4-bab1-4af6-acf3-3b4ca14d5c21","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.2046416} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e6e3db6e-3271-43f3-b800-3df84ac5415a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.2083077} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"15149b64-c41d-4106-a75d-e795689a3390","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.2190216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0739a00-6cd5-4c11-88b6-629b41c5a323","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.2193017} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"bd0f8c21-d5a6-4449-bcd7-2e356a9eabb4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541055.2228885} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"db5673fa9e9f71d65ea578502bf7faba"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"db5673fa9e9f71d65ea578502bf7faba","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db5673fa9e9f71d65ea578502bf7faba"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"37f84f0fdbab9fa8840220c04df8f01b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"37f84f0fdbab9fa8840220c04df8f01b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/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":"37f84f0fdbab9fa8840220c04df8f01b"} device-1 | {"level":"info","message":"OPTIONS /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/websocket 200 1ms","method":"OPTIONS","requestID":"37f84f0fdbab9fa8840220c04df8f01b","responseTime":1,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"f0aa8c4cc63788497d28a492b103f088"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f0aa8c4cc63788497d28a492b103f088","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f0aa8c4cc63788497d28a492b103f088"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070934,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f0aa8c4cc63788497d28a492b103f088","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0aa8c4cc63788497d28a492b103f088","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9afce65918c8f696d08ad0e61fd57bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e9afce65918c8f696d08ad0e61fd57bc","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d95f4176-1a28-4e59-9afe-774601209c20/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":"e9afce65918c8f696d08ad0e61fd57bc"} device-1 | {"level":"info","message":"OPTIONS /devices/d95f4176-1a28-4e59-9afe-774601209c20/websocket 200 1ms","method":"OPTIONS","requestID":"e9afce65918c8f696d08ad0e61fd57bc","responseTime":1,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"9a9f5daaf7a1c4b863493ec6f611b661"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f0aa8c4cc63788497d28a492b103f088"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a9f5daaf7a1c4b863493ec6f611b661","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/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":"f0aa8c4cc63788497d28a492b103f088"} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/websocket 200 21ms","method":"POST","requestID":"f0aa8c4cc63788497d28a492b103f088","responseTime":21,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9a9f5daaf7a1c4b863493ec6f611b661"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826686,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9a9f5daaf7a1c4b863493ec6f611b661","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9a9f5daaf7a1c4b863493ec6f611b661","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9a9f5daaf7a1c4b863493ec6f611b661"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/websocket 200 20ms","method":"POST","requestID":"9a9f5daaf7a1c4b863493ec6f611b661","responseTime":20,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/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":"9a9f5daaf7a1c4b863493ec6f611b661"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e540a9a84c317b65134930c3e2d58fee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e540a9a84c317b65134930c3e2d58fee","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e540a9a84c317b65134930c3e2d58fee"} device-1 | {"level":"info","message":"OPTIONS /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 1ms","method":"OPTIONS","requestID":"e540a9a84c317b65134930c3e2d58fee","responseTime":1,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"bdc994c79abf1572a78987b337ef5262"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bdc994c79abf1572a78987b337ef5262"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162259,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bdc994c79abf1572a78987b337ef5262","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a011a38e1094c5102d72f95fce8ebec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"ac8b17c9-6f32-4123-be2c-077e97390a8a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.3165765} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7a011a38e1094c5102d72f95fce8ebec","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d95f4176-1a28-4e59-9afe-774601209c20? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7a011a38e1094c5102d72f95fce8ebec"} device-1 | {"level":"info","message":"OPTIONS /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 1ms","method":"OPTIONS","requestID":"7a011a38e1094c5102d72f95fce8ebec","responseTime":1,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2e1eeb2-8094-4c90-8b2a-967d704af04f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.3234205} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"fdda4011a153eee9263c879b6154fad7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fdda4011a153eee9263c879b6154fad7","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fdda4011a153eee9263c879b6154fad7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649504,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fdda4011a153eee9263c879b6154fad7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fdda4011a153eee9263c879b6154fad7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"d096f7db-2940-4f70-9401-66f24d52a67d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.331163} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bdc994c79abf1572a78987b337ef5262"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.035","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bdc994c79abf1572a78987b337ef5262"} device-1 | {"level":"info","message":"PATCH /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 29ms","method":"PATCH","requestID":"bdc994c79abf1572a78987b337ef5262","responseTime":29,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"0a534230-4c76-44cb-8faa-db698ccb5ba2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.3334415} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fdda4011a153eee9263c879b6154fad7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0ca31b7-fea4-4a7e-9e24-1e65f2293a64","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.3387246} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fdda4011a153eee9263c879b6154fad7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"f8f61148-157c-4e54-9136-5816cc99e640","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.3544466} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fdda4011a153eee9263c879b6154fad7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fdda4011a153eee9263c879b6154fad7"} device-1 | {"level":"info","message":"PATCH /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 31ms","method":"PATCH","requestID":"fdda4011a153eee9263c879b6154fad7","responseTime":31,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d95f4176-1a28-4e59-9afe-774601209c20? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fdda4011a153eee9263c879b6154fad7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"11cd406abe3b3beec5ee07c5561f91b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"11cd406abe3b3beec5ee07c5561f91b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11cd406abe3b3beec5ee07c5561f91b8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186568,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"11cd406abe3b3beec5ee07c5561f91b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11cd406abe3b3beec5ee07c5561f91b8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"93ec89ec-7a72-4d03-944e-d05c65c1353c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.379949} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11cd406abe3b3beec5ee07c5561f91b8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11cd406abe3b3beec5ee07c5561f91b8"} device-1 | {"level":"info","message":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 13ms","method":"GET","requestID":"11cd406abe3b3beec5ee07c5561f91b8","responseTime":13,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11cd406abe3b3beec5ee07c5561f91b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"b880b054c5a79cb44143d4eba3f5e7b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b880b054c5a79cb44143d4eba3f5e7b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b880b054c5a79cb44143d4eba3f5e7b8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178514,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b880b054c5a79cb44143d4eba3f5e7b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b880b054c5a79cb44143d4eba3f5e7b8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"4e7cfc84-fe20-47af-8a1f-e857949fdfe4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.399921} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b880b054c5a79cb44143d4eba3f5e7b8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b880b054c5a79cb44143d4eba3f5e7b8"} device-1 | {"level":"info","message":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 14ms","method":"GET","requestID":"b880b054c5a79cb44143d4eba3f5e7b8","responseTime":14,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b880b054c5a79cb44143d4eba3f5e7b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.70832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3409d8856c2bd02f6c1919b6b11c2a3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to run experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to book experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully booked experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.178571,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234113,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"d47f2b00-9ef8-4a26-a684-5d15fe2cdf32","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.4658477} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"cc79cecf-16fd-4190-a916-6a4b9c7ac6d7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.4664655} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 17ms","method":"GET","requestID":"589903f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 18ms","method":"GET","requestID":"58992b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Setting up experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully set up experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully running experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a36430-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990593,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986146,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.288182,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"618fc7d5-c9f5-452a-b425-b0e7805ba1aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5293267} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a36430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58a36430-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"c88fce2d-2a89-4304-a527-54c85743effd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5314867} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a36430-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"da1c75f8-63e0-4e2b-8dcc-696c65c397da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5342867} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling 200 12ms","method":"POST","requestID":"58a36430-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a5ae20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 23ms","method":"GET","requestID":"58a2ef00-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 23ms","method":"GET","requestID":"58a31610-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54c66f89-1190-4656-89a8-3f63e048b718","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5446424} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.712519,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a5ae20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"58a5ae20-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F78f24b49-ed58-442f-8992-363126a057ad#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F78f24b49-ed58-442f-8992-363126a057ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d6acc595-f3b2-4630-b32c-c4ab17a4849d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5460384} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abd84d7d-6d1b-4041-a2cd-9937428ce80e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.546114} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a70db0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a5ae20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling 200 12ms","method":"POST","requestID":"58a5ae20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58a4feab-1ccf-4923-b256-9a94f38ce665","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5522149} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.68801,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a70db0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58a70db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f","responseTime":142,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a70db0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling 200 10ms","method":"POST","requestID":"58a70db0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"7e71fce235f0895ce67820c0bb4bcaba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e71fce235f0895ce67820c0bb4bcaba","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58a90980-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7e71fce235f0895ce67820c0bb4bcaba"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820217,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7e71fce235f0895ce67820c0bb4bcaba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e71fce235f0895ce67820c0bb4bcaba","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b92291e-12f0-456f-9f8e-517badcceb20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5649137} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.197945,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58a90980-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58a90980-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"6bf48969-5aaf-45a4-bf8d-a769b9c351c4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.569042} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58a90980-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling 200 9ms","method":"POST","requestID":"58a90980-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7e71fce235f0895ce67820c0bb4bcaba","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7e71fce235f0895ce67820c0bb4bcaba"} device-1 | {"level":"info","message":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 12ms","method":"GET","requestID":"7e71fce235f0895ce67820c0bb4bcaba","responseTime":12,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e71fce235f0895ce67820c0bb4bcaba"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697445,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883939,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"e225f35e219b179253c1f141b5b2b1a2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e225f35e219b179253c1f141b5b2b1a2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e225f35e219b179253c1f141b5b2b1a2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.174729135Z"}]},"request_id":"ebe54fd4-581b-4d20-905f-cd960d0c835c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5786128} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"2a1ad1a0-8aa1-403a-8930-512091b714a0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5792098} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} device-1 | {"level":"info","message":"GET /devices/90bb003e-7ce6-4145-84c5-1258588a0e10? 200 10ms","method":"GET","requestID":"58aab730-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.775723,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e225f35e219b179253c1f141b5b2b1a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e225f35e219b179253c1f141b5b2b1a2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 12ms","method":"GET","requestID":"58aade40-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Building connection plan","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} 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":"b826f761-4791-41c0-98c1-7f89bb7bfe11"},{"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":"b02f3be8-e270-42ff-aad0-cfd05e0173fa"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"05643433-96a8-4a03-8398-4180d561fdbd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:35.218992838Z"}]},"request_id":"99be5b24-387c-499a-963a-a7a85edb86c4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5868754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e225f35e219b179253c1f141b5b2b1a2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.740907,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e225f35e219b179253c1f141b5b2b1a2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e225f35e219b179253c1f141b5b2b1a2"} device-1 | {"level":"info","message":"GET /devices/d95f4176-1a28-4e59-9afe-774601209c20? 200 13ms","method":"GET","requestID":"e225f35e219b179253c1f141b5b2b1a2","responseTime":13,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"856a7bf4-b1e2-4770-aa66-1c58f05c4282","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5959256} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c083239-580d-411e-8304-8a8b2c0d229d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.5961735} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b'","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b'","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"58ad0120-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3409d8856c2bd02f6c1919b6b11c2a3f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58b40600-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d23a0b2b-3abc-4f3e-99ed-415932691fb6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.637558} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.021515,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58b40600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58b40600-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58b40600-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling 200 9ms","method":"POST","requestID":"58b40600-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58b5b3b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b42416c-7f8c-4c0f-866f-3cfda3a13f08","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.6471417} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.19096,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58b5b3b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58b5b3b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58b5b3b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling 200 8ms","method":"POST","requestID":"58b5b3b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling"} device-1 | {"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1845659984455349534 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:a79/\r\na=ice-pwd:yg7FOBW2LSBpXQGLMrkC7FrJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:DD:F4:9A:D6:97:CE:98:84:D5:8D:45:94:47:AB:38:11:1A:3E:33:BE:2B:0A:6C:11:D8:B8:58:37:1B:64:65\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8198803398039234150 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:+Fnh\r\na=ice-pwd:eXVJtaSrIlV2lwH4PBooAYOL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 86:90:19:F8:8B:36:6D:C9:03:67:8D:A4:43:34:70:8E:21:5A:D6:F2:C6:50:7B:BB:92:2E:7F:34:A2:60:73:8B\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3063851692 1 udp 2113937151 c5fec79b-0edd-4835-8835-107fb48aa593.local 56397 typ host generation 0 ufrag +Fnh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:850641107 1 udp 1677729535 141.24.211.56 56397 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +Fnh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d95f4176-1a28-4e59-9afe-774601209c20","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/d95f4176-1a28-4e59-9afe-774601209c20'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20'"} device-1 | {"content":{"candidate":"candidate:3988344395 1 udp 2113937151 0fbfcad8-482c-4bce-9e63-68ddb8afc035.local 50846 typ host generation 0 ufrag a79/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1771316276 1 udp 1677729535 141.24.211.56 50846 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag a79/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","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/90bb003e-7ce6-4145-84c5-1258588a0e10'"} device-1 | {"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"d95f4176-1a28-4e59-9afe-774601209c20","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/b6a339d2-4664-4d96-899a-931dfc971e7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71699148df407a07f8f352e0e1fecf5e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"71699148df407a07f8f352e0e1fecf5e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"d95f4176-1a28-4e59-9afe-774601209c20","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":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"}}},"level":"info","message":"received a callback","requestID":"71699148df407a07f8f352e0e1fecf5e"} device-1 | {"device":"90bb003e-7ce6-4145-84c5-1258588a0e10","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":"71699148df407a07f8f352e0e1fecf5e","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"71699148df407a07f8f352e0e1fecf5e"} device-1 | {"device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","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/b6a339d2-4664-4d96-899a-931dfc971e7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2f79de6825a75250fd96275685299f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f2f79de6825a75250fd96275685299f2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"}}},"level":"info","message":"received a callback","requestID":"f2f79de6825a75250fd96275685299f2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"58c1c1a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6a339d2-4664-4d96-899a-931dfc971e7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"033b8be2-e546-4e44-b3d4-88ec0ee4e18b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.7256637} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.158367,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58c1c1a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","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":"58c1c1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"58c1c1a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b 200 6ms","method":"GET","requestID":"58c1c1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"f2f79de6825a75250fd96275685299f2","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2f79de6825a75250fd96275685299f2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58c59230-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35e07010-5285-44b3-a754-ee6c24b9b865","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.7509575} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.217633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58c59230-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58c59230-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58c59230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling 200 7ms","method":"POST","requestID":"58c59230-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58c6f1c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b1cbed1-7927-495b-9ec0-820b399bcbab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.7603087} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.097322,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58c6f1c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58c6f1c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58c6f1c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling 200 8ms","method":"POST","requestID":"58c6f1c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/78f24b49-ed58-442f-8992-363126a057ad","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.210647,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"43bd62a83ae6677acd6657b9ce2eb6dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/78f24b49-ed58-442f-8992-363126a057ad","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/78f24b49-ed58-442f-8992-363126a057ad HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd"} experiment-1 | {"level":"info","message":"GET /experiments/78f24b49-ed58-442f-8992-363126a057ad 200 12ms","method":"GET","requestID":"43bd62a83ae6677acd6657b9ce2eb6dd","responseTime":12,"status":200,"url":"/experiments/78f24b49-ed58-442f-8992-363126a057ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"c0c5405bbf848a2c47fef765ad37a009"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c0c5405bbf848a2c47fef765ad37a009","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/78f24b49-ed58-442f-8992-363126a057ad","requestID":"c0c5405bbf848a2c47fef765ad37a009"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.622832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c0c5405bbf848a2c47fef765ad37a009","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0c5405bbf848a2c47fef765ad37a009","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Attempting to finish experiment","requestID":"c0c5405bbf848a2c47fef765ad37a009"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.25172,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","device":"d95f4176-1a28-4e59-9afe-774601209c20","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b","device":"90bb003e-7ce6-4145-84c5-1258588a0e10","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/b6a339d2-4664-4d96-899a-931dfc971e7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6a339d2-4664-4d96-899a-931dfc971e7b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6a339d2-4664-4d96-899a-931dfc971e7b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5559dc0a-7ac9-4616-92b4-56f37e18cdf7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.8584423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19eab75d-eab9-4ceb-b623-3b41e40377bf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.8585672} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b87069fc4a85bccd1a5aae304739c657","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b87069fc4a85bccd1a5aae304739c657","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a644960f18a96bbf729a8ebef025a3ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"}}},"level":"info","message":"received a callback","requestID":"b87069fc4a85bccd1a5aae304739c657"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a644960f18a96bbf729a8ebef025a3ac","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"}}},"level":"info","message":"received a callback","requestID":"a644960f18a96bbf729a8ebef025a3ac"} device-1 | {"data":{"peerconnection":"b6a339d2-4664-4d96-899a-931dfc971e7b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b 204 43ms","method":"DELETE","requestID":"58d374e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":43,"status":204,"url":"/peerconnections/b6a339d2-4664-4d96-899a-931dfc971e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/78f24b49-ed58-442f-8992-363126a057ad"},"level":"info","message":"Successfully finished experiment","requestID":"c0c5405bbf848a2c47fef765ad37a009"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58dd38e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd95f4176-1a28-4e59-9afe-774601209c20","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aeea1943-7d13-4092-975e-11ef07762ff5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.9103649} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.381493,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58dd38e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d95f4176-1a28-4e59-9afe-774601209c20","object_type":"device","rebac_allow":false,"scope_allow":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":"58dd38e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58dd38e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling 200 14ms","method":"POST","requestID":"58dd38e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/d95f4176-1a28-4e59-9afe-774601209c20/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58dff800-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F78f24b49-ed58-442f-8992-363126a057ad': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F78f24b49-ed58-442f-8992-363126a057ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0b8cb4ae-830b-4e2b-bf50-0152d5e4ec94","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.9218645} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"904a3576-350a-4c28-be02-26b9b56c7731","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.922313} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"c0c5405bbf848a2c47fef765ad37a009","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90bb003e-7ce6-4145-84c5-1258588a0e10","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fbc33ec7-28a3-4d20-ab63-4b1584f09ca7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541057.9261723} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.873877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"58dff800-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10","object_type":"device","rebac_allow":false,"scope_allow":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":"58dff800-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58dff800-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling 200 13ms","method":"POST","requestID":"58dff800-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/90bb003e-7ce6-4145-84c5-1258588a0e10/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/78f24b49-ed58-442f-8992-363126a057ad","requestID":"c0c5405bbf848a2c47fef765ad37a009"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/78f24b49-ed58-442f-8992-363126a057ad HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0c5405bbf848a2c47fef765ad37a009"} experiment-1 | {"level":"info","message":"DELETE /experiments/78f24b49-ed58-442f-8992-363126a057ad 204 158ms","method":"DELETE","requestID":"c0c5405bbf848a2c47fef765ad37a009","responseTime":158,"status":204,"url":"/experiments/78f24b49-ed58-442f-8992-363126a057ad"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"b87069fc4a85bccd1a5aae304739c657","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"b87069fc4a85bccd1a5aae304739c657"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"a644960f18a96bbf729a8ebef025a3ac","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"a644960f18a96bbf729a8ebef025a3ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA","level":"info","message":"auth send jwt","requestID":"93cc2616f5ef357542eaf7b23390350b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"93cc2616f5ef357542eaf7b23390350b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"93cc2616f5ef357542eaf7b23390350b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3281","request_time":"0.732","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"796c7d936112d00b3ea65fc07fe0d9fc"} gateway-1 | {"time_local":"10/Oct/2024:06:17:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.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":"33b611e7dae08d76470064eb8f40f180"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.870274,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"93cc2616f5ef357542eaf7b23390350b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541057,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1N30.pXyusIL2ELLJiDs3k9qgCyYAP6WgSDu-pNahagtvspA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","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/d95f4176-1a28-4e59-9afe-774601209c20' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/90bb003e-7ce6-4145-84c5-1258588a0e10' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"25deb649-9f9c-4980-86a2-3a6317978485","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0132642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0eb5dec2-80de-4d20-9f25-2d90bd40fac0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0175} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f312b06a-64fe-4b8a-a4ae-9d5dd0efc078","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0273478} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e58ee7e9-6588-4d8e-a1e8-f951e27ada0a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.027522} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"1d8fca50-c574-4036-b0d0-c969232103e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0306706} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"93cc2616f5ef357542eaf7b23390350b"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"93cc2616f5ef357542eaf7b23390350b","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93cc2616f5ef357542eaf7b23390350b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA","level":"info","message":"auth send jwt","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.757759,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541058,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3c0f1813-d579-40b5-a718-9ac9e99145a5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0548806} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c76e2b00-32ca-426d-a004-1303b51ae1ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0594375} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"1409e930-d545-4a6c-a761-d3fc8cace652","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.074277} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"549fc0d6-256a-431c-919f-c314c5509eed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.0743785} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"daac2feb-d5fb-420e-92b6-94a2dbb82d41","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.078254} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce6bdc4cd30885a02c7c9809fcae1be8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA","level":"info","message":"auth send jwt","requestID":"9d82108d316ca19105db6573908b75dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d82108d316ca19105db6573908b75dc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9d82108d316ca19105db6573908b75dc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.903216,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9d82108d316ca19105db6573908b75dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541058,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d82108d316ca19105db6573908b75dc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"5c8b0cf4-94fa-4446-a038-97ac93229f10","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.5665047} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d82108d316ca19105db6573908b75dc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d278767-d6bf-4d9b-9e73-eaaebcce81cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.5718992} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9d82108d316ca19105db6573908b75dc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"c310a7fb-57a2-4de5-a49b-1296b13a2a54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541058.5843205} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d82108d316ca19105db6573908b75dc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9d82108d316ca19105db6573908b75dc"} gateway-1 | {"time_local":"10/Oct/2024:06:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6de1899e-2251-4704-80be-ae9aa4b170ab HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9d82108d316ca19105db6573908b75dc"} device-1 | {"level":"info","message":"PATCH /devices/6de1899e-2251-4704-80be-ae9aa4b170ab 200 32ms","method":"PATCH","requestID":"9d82108d316ca19105db6573908b75dc","responseTime":32,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA","level":"info","message":"auth send jwt","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.24378,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541058,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA1OH0.gfyrWiM7KlQP90xpB6sY1RY-0davb8EA0PEcDoUGHoA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7"} gateway-1 | {"time_local":"10/Oct/2024:06:17:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/websocket 200 21ms","method":"POST","requestID":"2f01c4a42ea5b1b177a3fa6d93673ff7","responseTime":21,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"244065ca9dbc25a7cdabbe476dede7ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"244065ca9dbc25a7cdabbe476dede7ac","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/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":"244065ca9dbc25a7cdabbe476dede7ac"} device-1 | {"level":"info","message":"OPTIONS /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/websocket 200 1ms","method":"OPTIONS","requestID":"244065ca9dbc25a7cdabbe476dede7ac","responseTime":1,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"f5d46644a1dedc7053704d92177d4326"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5d46644a1dedc7053704d92177d4326","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f5d46644a1dedc7053704d92177d4326"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159568,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f5d46644a1dedc7053704d92177d4326","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5d46644a1dedc7053704d92177d4326","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f5d46644a1dedc7053704d92177d4326"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/websocket 200 20ms","method":"POST","requestID":"f5d46644a1dedc7053704d92177d4326","responseTime":20,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f5d46644a1dedc7053704d92177d4326"} device-1 | {"level":"info","message":"device 'http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b4950e6edc986a058a3e80bb4842f902","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b4950e6edc986a058a3e80bb4842f902","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b4950e6edc986a058a3e80bb4842f902"} device-1 | {"level":"info","message":"OPTIONS /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 1ms","method":"OPTIONS","requestID":"b4950e6edc986a058a3e80bb4842f902","responseTime":1,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"4c67de822389aada06f4e030706c141f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c67de822389aada06f4e030706c141f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4c67de822389aada06f4e030706c141f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349845,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4c67de822389aada06f4e030706c141f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c67de822389aada06f4e030706c141f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"95260503-3ac8-4bad-ab35-e829a43e9e3e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.1980195} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c67de822389aada06f4e030706c141f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f34fd2ee-3185-4851-95d1-0b37c5e15503","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.2054713} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4c67de822389aada06f4e030706c141f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"eb01b28a-7b10-466b-84ad-14ca5f9dfaaf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.2180645} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c67de822389aada06f4e030706c141f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4c67de822389aada06f4e030706c141f"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4c67de822389aada06f4e030706c141f"} device-1 | {"level":"info","message":"PATCH /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 37ms","method":"PATCH","requestID":"4c67de822389aada06f4e030706c141f","responseTime":37,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"8a0f0541ce88b936f26823c43f39ae6a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8a0f0541ce88b936f26823c43f39ae6a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a0f0541ce88b936f26823c43f39ae6a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948131,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8a0f0541ce88b936f26823c43f39ae6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a0f0541ce88b936f26823c43f39ae6a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"e0f0b4d0-0318-47dd-8a59-3a3ff9023766","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.2453396} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8a0f0541ce88b936f26823c43f39ae6a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a0f0541ce88b936f26823c43f39ae6a"} device-1 | {"level":"info","message":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 17ms","method":"GET","requestID":"8a0f0541ce88b936f26823c43f39ae6a","responseTime":17,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a0f0541ce88b936f26823c43f39ae6a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"4e41e8bc0097f48d539f69ece3f90ca5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e41e8bc0097f48d539f69ece3f90ca5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4e41e8bc0097f48d539f69ece3f90ca5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.004354,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4e41e8bc0097f48d539f69ece3f90ca5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e41e8bc0097f48d539f69ece3f90ca5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"68c038bd-238f-4e85-84b3-306e2dd96200","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.267077} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e41e8bc0097f48d539f69ece3f90ca5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4e41e8bc0097f48d539f69ece3f90ca5"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e41e8bc0097f48d539f69ece3f90ca5"} device-1 | {"level":"info","message":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? 200 16ms","method":"GET","requestID":"4e41e8bc0097f48d539f69ece3f90ca5","responseTime":16,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.59148,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0222ff251b2f5e5670fd8e29ed1d2d73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to run experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to book experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully booked experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682305,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762558,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"b4c381c1-ca7a-4516-a00b-81b89b161d81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.3322618} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"7f7c4797-1fb0-4d95-8289-3856c4cc18e4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.3331978} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 13ms","method":"GET","requestID":"5a4eca40-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? 200 12ms","method":"GET","requestID":"5a4ef150-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Setting up experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully set up experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a58b550-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully running experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.815004,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672073,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"8145f237-1fca-40d0-b34e-f8556d79ac80","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.396658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"6782daa3-138c-4988-8291-c4b80ce2d349","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.3971639} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50016","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad086f3c-744b-4e83-80a4-c99a95e79dac","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.3992364} authorization-1 | {"client_addr":"127.0.0.1:50016","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.644415,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a58b550-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","rebac_allow":false,"scope_allow":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":"5a58b550-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 15ms","method":"GET","requestID":"5a586730-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? 200 15ms","method":"GET","requestID":"5a588e40-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a58b550-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling 200 16ms","method":"POST","requestID":"5a58b550-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a5b2650-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a5b7470-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa38e15f6-a2fc-4ff0-97bf-7808b55d0d09#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa38e15f6-a2fc-4ff0-97bf-7808b55d0d09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e488216c-c55b-4887-ab3f-01cc6bf403d4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4103909} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0bc82c0d-d06d-4ccc-a4b5-71721d1e631d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4105635} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b414f9cc-98b4-4e28-9b51-c00365dfe5e1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4106224} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e479de3-459d-4a3e-920c-b7f80e9a1b11","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4129002} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.841458,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a5b2650-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5a5b2650-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.414533,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a5b7470-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5a5b7470-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a5b2650-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling 200 12ms","method":"POST","requestID":"5a5b2650-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a5b7470-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling 200 12ms","method":"POST","requestID":"5a5b7470-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a5d7040-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73","responseTime":143,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d75f6e56-36ff-49c2-a8a1-95092db65bae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4249246} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.664777,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"014bd4923a3b31f5e1a254639ea8a34a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a5d7040-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","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":"014bd4923a3b31f5e1a254639ea8a34a","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5a5d7040-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"014bd4923a3b31f5e1a254639ea8a34a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a5d7040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling 200 10ms","method":"POST","requestID":"5a5d7040-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190406,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"014bd4923a3b31f5e1a254639ea8a34a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"014bd4923a3b31f5e1a254639ea8a34a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671073,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.858482,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"c3296f32-b86c-45fe-97b0-b52e8b4723a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4374843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"014bd4923a3b31f5e1a254639ea8a34a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"014bd4923a3b31f5e1a254639ea8a34a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.027318408Z"}]},"request_id":"a46e390c-37bc-45c1-bf9c-9850cdd55b20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.441581} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"014bd4923a3b31f5e1a254639ea8a34a"} device-1 | {"level":"info","message":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 14ms","method":"GET","requestID":"014bd4923a3b31f5e1a254639ea8a34a","responseTime":14,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"ac430d91-5467-46d1-8c10-c9329ada3b18","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.442781} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02? 200 15ms","method":"GET","requestID":"5a5f4500-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw","level":"info","message":"auth send jwt","requestID":"1175bb082c4e3fa9db76a046e461b9d4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1175bb082c4e3fa9db76a046e461b9d4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? 200 14ms","method":"GET","requestID":"5a5f6c10-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1175bb082c4e3fa9db76a046e461b9d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Building connection plan","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} 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":"e31b6cb5-1cb8-4df3-a5bb-6b29aaccfe59"},{"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":"9b32c5de-f843-4978-8068-fbb1ad411b18"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"75cef02c-6081-40c7-9e4c-a49c560e22e9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113171,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1175bb082c4e3fa9db76a046e461b9d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1175bb082c4e3fa9db76a046e461b9d4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50716","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.573084,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541060,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2MH0.CzrsA3uAVq55l2iyLIhcP36gyYvZ7OThEUAH4KnLltw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:38.074251369Z"}]},"request_id":"5fc11654-0228-436b-a3d5-b94d4b9a015f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4585285} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1175bb082c4e3fa9db76a046e461b9d4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1175bb082c4e3fa9db76a046e461b9d4"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4e5499b5-7b5e-42ec-ab2e-7ee23116cb13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.461342} gateway-1 | {"time_local":"10/Oct/2024:06:17:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1175bb082c4e3fa9db76a046e461b9d4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2dc3899-01b3-47fd-89e0-0fd39da27704","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.4615624} device-1 | {"level":"info","message":"GET /devices/6de1899e-2251-4704-80be-ae9aa4b170ab? 200 13ms","method":"GET","requestID":"1175bb082c4e3fa9db76a046e461b9d4","responseTime":13,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4'","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4'","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5a61dd10-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0222ff251b2f5e5670fd8e29ed1d2d73"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a69a540-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac354842-2085-423c-9b08-7104be41e7e4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.5041132} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.411609,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a69a540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a69a540-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a69a540-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling 200 8ms","method":"POST","requestID":"5a69a540-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a6b04d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a3c9e2b-48d8-4e0a-a603-5ed6f9317d7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541060.5139823} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471823,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5a6b04d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a6b04d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a6b04d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling 200 7ms","method":"POST","requestID":"5a6b04d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling"} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8395385134983337807 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:SeWr\r\na=ice-pwd:lbsxmYhkmZCPJEYyO97olfUr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 53:BD:8D:1D:49:89:37:E6:AC:21:70:CC:71:1D:FD:FC:26:62:8F:EE:B1:48:6A:7C:5A:55:04:B6:00:F8:F0:16\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:345629579 1 udp 2113937151 eb8a4209-b7dd-42b5-8011-6c99c86fc234.local 60236 typ host generation 0 ufrag SeWr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2276606616 1 udp 1677729535 141.24.211.56 60236 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag SeWr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","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/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","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/092167ec-3f51-4cfa-ba4b-7bc0be51dd02'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"400d0680f7ec00a3875b0da7665b81eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"400d0680f7ec00a3875b0da7665b81eb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"}}},"level":"info","message":"received a callback","requestID":"400d0680f7ec00a3875b0da7665b81eb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"400d0680f7ec00a3875b0da7665b81eb","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"400d0680f7ec00a3875b0da7665b81eb"} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","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/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2f91a00498382e12cbdb6f16b82e213","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c2f91a00498382e12cbdb6f16b82e213","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"}}},"level":"info","message":"received a callback","requestID":"c2f91a00498382e12cbdb6f16b82e213"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5ba7a380-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d03be9e8-de4c-451a-b1c6-18e2f448dfe4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.588859} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.582068,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ba7a380-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","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":"5ba7a380-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5ba7a380-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4 200 8ms","method":"GET","requestID":"5ba7a380-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"c2f91a00498382e12cbdb6f16b82e213","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"c2f91a00498382e12cbdb6f16b82e213"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5bac1050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56e3ff5d-e9f4-40de-84c9-15bc68f9fad9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.6173089} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.304514,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bac1050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bac1050-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5bac1050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling 200 11ms","method":"POST","requestID":"5bac1050-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5bae0c20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c1553ce-4f4f-40db-a78f-bec4afb3121b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.630716} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.461041,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bae0c20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5bae0c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5bae0c20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling 200 9ms","method":"POST","requestID":"5bae0c20-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U","level":"info","message":"auth send jwt","requestID":"f274c946e6133632bef8402f7609ce8b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f274c946e6133632bef8402f7609ce8b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","requestID":"f274c946e6133632bef8402f7609ce8b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.331376,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f274c946e6133632bef8402f7609ce8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541062,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f274c946e6133632bef8402f7609ce8b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","requestID":"f274c946e6133632bef8402f7609ce8b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f274c946e6133632bef8402f7609ce8b"} experiment-1 | {"level":"info","message":"GET /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09 200 15ms","method":"GET","requestID":"f274c946e6133632bef8402f7609ce8b","responseTime":15,"status":200,"url":"/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U","level":"info","message":"auth send jwt","requestID":"ef40000bb26f495cb9be872cd896cffa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ef40000bb26f495cb9be872cd896cffa","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","requestID":"ef40000bb26f495cb9be872cd896cffa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.178582,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ef40000bb26f495cb9be872cd896cffa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541062,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef40000bb26f495cb9be872cd896cffa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Attempting to finish experiment","requestID":"ef40000bb26f495cb9be872cd896cffa"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.530306,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541062,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","device":"092167ec-3f51-4cfa-ba4b-7bc0be51dd02","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6de1899e-2251-4704-80be-ae9aa4b170ab","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf07c2d0423badb9426dfbb80a17c0bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe5d6dee4-6ee1-4919-b1e8-87e4783eaeb4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"1d57d8cb-3175-4ce1-bdb7-6626565162c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.7481449} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bf07c2d0423badb9426dfbb80a17c0bf","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a327bef5-715a-4e54-b58f-9e8189f3e0ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.7488642} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"}}},"level":"info","message":"received a callback","requestID":"bf07c2d0423badb9426dfbb80a17c0bf"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3666a175bd18aae23b2dfcda318181de","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 17ms","method":"POST","requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3666a175bd18aae23b2dfcda318181de","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"}}},"level":"info","message":"received a callback","requestID":"3666a175bd18aae23b2dfcda318181de"} device-1 | {"data":{"peerconnection":"e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4 204 53ms","method":"DELETE","requestID":"5bbc6400-86cf-11ef-b00e-2fb111b9dda5","responseTime":53,"status":204,"url":"/peerconnections/e5d6dee4-6ee1-4919-b1e8-87e4783eaeb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"},"level":"info","message":"Successfully finished experiment","requestID":"ef40000bb26f495cb9be872cd896cffa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5bc7fcc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F092167ec-3f51-4cfa-ba4b-7bc0be51dd02","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"782520a4-8625-42c1-a2db-eefb8e1b214c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.8037505} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.416565,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bc7fcc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02","object_type":"device","rebac_allow":false,"scope_allow":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":"5bc7fcc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5bc7fcc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling 200 15ms","method":"POST","requestID":"5bc7fcc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/092167ec-3f51-4cfa-ba4b-7bc0be51dd02/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa38e15f6-a2fc-4ff0-97bf-7808b55d0d09': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa38e15f6-a2fc-4ff0-97bf-7808b55d0d09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0a07ba76-94fe-47f2-b95e-8b8d82924b13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.811475} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8c1a5c6-f070-455c-931b-8fe51dced570","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.812145} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5bcae2f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"ef40000bb26f495cb9be872cd896cffa","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6de1899e-2251-4704-80be-ae9aa4b170ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd590309-8d9c-4238-b08e-db273c1a8a55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.823798} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.416067,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5bcae2f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6de1899e-2251-4704-80be-ae9aa4b170ab","object_type":"device","rebac_allow":false,"scope_allow":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":"5bcae2f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5bcae2f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling 200 16ms","method":"POST","requestID":"5bcae2f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/6de1899e-2251-4704-80be-ae9aa4b170ab/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09","requestID":"ef40000bb26f495cb9be872cd896cffa"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.192","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ef40000bb26f495cb9be872cd896cffa"} experiment-1 | {"level":"info","message":"DELETE /experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09 204 186ms","method":"DELETE","requestID":"ef40000bb26f495cb9be872cd896cffa","responseTime":186,"status":204,"url":"/experiments/a38e15f6-a2fc-4ff0-97bf-7808b55d0d09"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3230","request_time":"4.276","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ca9dd14d243d15ab66f14a2bdfa1d91d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"bf07c2d0423badb9426dfbb80a17c0bf","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf07c2d0423badb9426dfbb80a17c0bf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"3666a175bd18aae23b2dfcda318181de","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"3666a175bd18aae23b2dfcda318181de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U","level":"info","message":"auth send jwt","requestID":"1e4e38b0061ee005539cb19bd69b9aaa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1e4e38b0061ee005539cb19bd69b9aaa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.956796,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.766","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3c9b2c2cf5a9a72e8a5bfa22925fbc56"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1e4e38b0061ee005539cb19bd69b9aaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541062,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","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/6de1899e-2251-4704-80be-ae9aa4b170ab' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5c21a5bc-457e-46c3-af4d-2959bc2a4005","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9185543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","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/092167ec-3f51-4cfa-ba4b-7bc0be51dd02' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4557881c-eed2-4602-968d-c001c9d02957","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9235234} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"32331c84-ed4b-49cc-ab4c-a94127f302dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9337072} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75c132bf-f602-49a4-a086-b20e5ba4f690","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9339707} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"7f098de7-44de-4162-8a16-35fcf673c2b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9381876} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1e4e38b0061ee005539cb19bd69b9aaa"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e4e38b0061ee005539cb19bd69b9aaa"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1e4e38b0061ee005539cb19bd69b9aaa","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U","level":"info","message":"auth send jwt","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.771626,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541062,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2Mn0.Vltcc1jLLneb9BoalfDBv36IGj_4MymhKzxXCny7B1U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"34eab317-e605-4473-bcca-f6fb7ba23b09","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9669878} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee138797-469b-4a92-a05e-dbf4560df296","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9711587} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"9ada9e1c-d33c-448c-9205-1d856dc7f41c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9814818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d10c3bb5-c58e-4669-b603-569be1a29285","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9816284} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"8bc2a8cb-e6fc-4137-b9e0-b2b3f5cf7515","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541062.9858336} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eaeb0345a9ecb02c6d7fb6a6bc1fd697"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2M30.nzIE0mCvSxb1C89k7Vv1PGNJuxxEscjfvY1w5Hj1uxE","level":"info","message":"auth send jwt","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.653036,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541063,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2M30.nzIE0mCvSxb1C89k7Vv1PGNJuxxEscjfvY1w5Hj1uxE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"ff45eb2f-5ab3-4293-9c1b-80d38a3fb473","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541063.474801} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f6afdb7-1e0c-4cb5-a200-76efa666f55e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541063.4787724} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"39873184-85ee-4352-bde6-60ff6d28758e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541063.4889705} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc"} device-1 | {"level":"info","message":"PATCH /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748 200 23ms","method":"PATCH","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc","responseTime":23,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"} gateway-1 | {"time_local":"10/Oct/2024:06:17:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d1f943e4238d47c3b284bcd6dbf1bbfc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2M30.nzIE0mCvSxb1C89k7Vv1PGNJuxxEscjfvY1w5Hj1uxE","level":"info","message":"auth send jwt","requestID":"573d8021bc2b76c315180a80d4c0b3cb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"573d8021bc2b76c315180a80d4c0b3cb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"573d8021bc2b76c315180a80d4c0b3cb"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667337,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"573d8021bc2b76c315180a80d4c0b3cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541063,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2M30.nzIE0mCvSxb1C89k7Vv1PGNJuxxEscjfvY1w5Hj1uxE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"573d8021bc2b76c315180a80d4c0b3cb","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"573d8021bc2b76c315180a80d4c0b3cb"} gateway-1 | {"time_local":"10/Oct/2024:06:17:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"573d8021bc2b76c315180a80d4c0b3cb"} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/websocket 200 19ms","method":"POST","requestID":"573d8021bc2b76c315180a80d4c0b3cb","responseTime":19,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09e422832398940ee77cd5a0c47afd09","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"09e422832398940ee77cd5a0c47afd09","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/29804a02-58ff-412a-951c-0e320dcf92ea/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":"09e422832398940ee77cd5a0c47afd09"} device-1 | {"level":"info","message":"OPTIONS /devices/29804a02-58ff-412a-951c-0e320dcf92ea/websocket 200 1ms","method":"OPTIONS","requestID":"09e422832398940ee77cd5a0c47afd09","responseTime":1,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"547df137b07bf467c5aebc4b71f5aaea"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"547df137b07bf467c5aebc4b71f5aaea","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"547df137b07bf467c5aebc4b71f5aaea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141382,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"547df137b07bf467c5aebc4b71f5aaea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"547df137b07bf467c5aebc4b71f5aaea","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"547df137b07bf467c5aebc4b71f5aaea"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/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":"547df137b07bf467c5aebc4b71f5aaea"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/websocket 200 22ms","method":"POST","requestID":"547df137b07bf467c5aebc4b71f5aaea","responseTime":22,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e0b06b0593521755b1bd7ba3b2fc10ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e0b06b0593521755b1bd7ba3b2fc10ef","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/29804a02-58ff-412a-951c-0e320dcf92ea? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e0b06b0593521755b1bd7ba3b2fc10ef"} device-1 | {"level":"info","message":"OPTIONS /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 1ms","method":"OPTIONS","requestID":"e0b06b0593521755b1bd7ba3b2fc10ef","responseTime":1,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"c8a70ca441d4514828b2052081ff3dd1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c8a70ca441d4514828b2052081ff3dd1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c8a70ca441d4514828b2052081ff3dd1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.881411,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c8a70ca441d4514828b2052081ff3dd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c8a70ca441d4514828b2052081ff3dd1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"10d2b12e-4a89-40f5-8018-8bb8d8315f4b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.1299043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c8a70ca441d4514828b2052081ff3dd1","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcdb6641-7684-45bf-aa61-10e711f67c93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.1367657} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c8a70ca441d4514828b2052081ff3dd1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"499d8650-ad99-4be1-92be-7a53ca598032","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.1508696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c8a70ca441d4514828b2052081ff3dd1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c8a70ca441d4514828b2052081ff3dd1"} device-1 | {"level":"info","message":"PATCH /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 37ms","method":"PATCH","requestID":"c8a70ca441d4514828b2052081ff3dd1","responseTime":37,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/29804a02-58ff-412a-951c-0e320dcf92ea? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c8a70ca441d4514828b2052081ff3dd1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"06bb48ccd65305b2d0486e99817048b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"06bb48ccd65305b2d0486e99817048b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06bb48ccd65305b2d0486e99817048b8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.201429,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"06bb48ccd65305b2d0486e99817048b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"06bb48ccd65305b2d0486e99817048b8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"48dcb523-f219-4582-956f-adc6b2c116ad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.1786704} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"06bb48ccd65305b2d0486e99817048b8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06bb48ccd65305b2d0486e99817048b8"} device-1 | {"level":"info","message":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 16ms","method":"GET","requestID":"06bb48ccd65305b2d0486e99817048b8","responseTime":16,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06bb48ccd65305b2d0486e99817048b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"25fad259749f22d77a2312b974915099"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"25fad259749f22d77a2312b974915099","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25fad259749f22d77a2312b974915099"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275475,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25fad259749f22d77a2312b974915099","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"25fad259749f22d77a2312b974915099","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"3e5d0cf1-3eb0-4f30-9cff-4e78001e7b0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.2008595} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25fad259749f22d77a2312b974915099","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25fad259749f22d77a2312b974915099"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25fad259749f22d77a2312b974915099"} device-1 | {"level":"info","message":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? 200 15ms","method":"GET","requestID":"25fad259749f22d77a2312b974915099","responseTime":15,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"12a34215036327587a2dc6d4c19a2b38"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"12a34215036327587a2dc6d4c19a2b38","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"12a34215036327587a2dc6d4c19a2b38"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.854935,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"12a34215036327587a2dc6d4c19a2b38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"12a34215036327587a2dc6d4c19a2b38","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to run experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to book experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully booked experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.062741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220344,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"a24e8127-c51d-4d65-9b5d-62d2c2a0409e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.2591496} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"1625a824-d4ae-4561-8ff5-b02af8a7694a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.260635} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 19ms","method":"GET","requestID":"5d3e2200-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? 200 18ms","method":"GET","requestID":"5d3e4910-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Setting up experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully set up experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d48a950-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully running experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956657,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632098,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54736","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17: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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"356ad7fd-a72b-4348-9c6d-02f4a735a110","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.325166} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef4ef921-9834-427f-82d6-da122e8cb3dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.325441} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"1e50aab2-df68-4968-8cc6-976b7ed77d20","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.326253} authorization-1 | {"client_addr":"127.0.0.1:54736","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.073129,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d48a950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","rebac_allow":false,"scope_allow":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":"5d48a950-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? 200 14ms","method":"GET","requestID":"5d488240-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d48a950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling 200 14ms","method":"POST","requestID":"5d48a950-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 16ms","method":"GET","requestID":"5d485b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d4b1a50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d4b4160-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.431177,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70874cb5-1e90-4c5f-a0ff-38618f73a249","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.337346} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd52fac9-91a0-40a4-9626-0c5a9347aac3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3384104} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe144a55b-4d53-47e5-9631-0dc109293e6e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe144a55b-4d53-47e5-9631-0dc109293e6e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"bc06cba7-1004-4d04-aa28-3ce3960c261d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3388696} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d4b1a50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d4b1a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.361876,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5029bb49-b40c-45e4-a8e0-e19a50d02407","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3391387} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d4b4160-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","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":"5d4b1a50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling 200 9ms","method":"POST","requestID":"5d4b1a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5d4b4160-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"12a34215036327587a2dc6d4c19a2b38","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d4b4160-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling 200 11ms","method":"POST","requestID":"5d4b4160-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d4d3d30-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"12a34215036327587a2dc6d4c19a2b38"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"12a34215036327587a2dc6d4c19a2b38","responseTime":135,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c31d04bc-46d6-47c7-b8cf-e12ff0230817","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3514445} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150281,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d4d3d30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d4d3d30-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d4d3d30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling 200 9ms","method":"POST","requestID":"5d4d3d30-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.766475,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e92de1e26471ca3b6e32c4a8d2acdccd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.520085,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.031419,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"e0e1256d-7377-4e64-bb82-80d397ea91ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3636749} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.933660544Z"}]},"request_id":"d4843fad-b79b-428c-a2ef-adfaf3195da2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3672998} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd"} device-1 | {"level":"info","message":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 13ms","method":"GET","requestID":"e92de1e26471ca3b6e32c4a8d2acdccd","responseTime":13,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"ae07c0d1-3e72-4a64-827d-b6c3954bfee8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3681579} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/29804a02-58ff-412a-951c-0e320dcf92ea? 200 14ms","method":"GET","requestID":"5d4eeae0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? 200 14ms","method":"GET","requestID":"5d4f11f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Building connection plan","requestID":"12a34215036327587a2dc6d4c19a2b38"} 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":"b4b8525b-f5b3-432b-8a76-7cb39abdf4f6"},{"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":"b6a62814-1552-4fbe-994f-e3bb26785182"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9974dd23-ccaa-4c35-aa8d-568d0f7d206e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"12a34215036327587a2dc6d4c19a2b38"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"12a34215036327587a2dc6d4c19a2b38"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ","level":"info","message":"auth send jwt","requestID":"68bedc64c33e3cb9643b745b7cc8136c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"68bedc64c33e3cb9643b745b7cc8136c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"68bedc64c33e3cb9643b745b7cc8136c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.66829,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"client_addr":"127.0.0.1:54726","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.591799,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"68bedc64c33e3cb9643b745b7cc8136c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541065,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2NX0.OhqPqDeaQ6RB-5aYsImXPvzCD7y8P4Lr7LcrxkxIVCQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"68bedc64c33e3cb9643b745b7cc8136c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:42.981452344Z"}]},"request_id":"bcff6759-eccf-442c-8f82-63b535e174cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3831153} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"68bedc64c33e3cb9643b745b7cc8136c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"68bedc64c33e3cb9643b745b7cc8136c"} device-1 | {"level":"info","message":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? 200 9ms","method":"GET","requestID":"68bedc64c33e3cb9643b745b7cc8136c","responseTime":9,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68bedc64c33e3cb9643b745b7cc8136c"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f5059850-6ca6-45ff-a414-0d1138ea09f1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3865209} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fc59654-0af2-4efb-a962-00846f8975e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.3866856} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5'","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5'","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"5d5182f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"12a34215036327587a2dc6d4c19a2b38"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d59c050-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"355f665d-e4ed-4f3c-a4f8-ceeea47f6595","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.4331007} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.373111,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d59c050-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d59c050-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d59c050-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling 200 7ms","method":"POST","requestID":"5d59c050-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5d5b1fe0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d790c43-944b-4334-87b3-89aa299d716c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541065.4421234} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.067299,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d5b1fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d5b1fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5d5b1fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling 200 9ms","method":"POST","requestID":"5d5b1fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 592295199323824714 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:AmgM\r\na=ice-pwd:7GBcWYXJ1QcUPYq0Et+vH2Vw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E3:8A:E9:5F:ED:6E:F5:C2:8A:EB:4C:F1:03:5F:62:73:15:C6:1B:2A:12:46:00:3E:1E:36:BE:4E:3A:64:4C:77\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e0d1a048ecf33cbc6b8761d8ee472140","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e0d1a048ecf33cbc6b8761d8ee472140","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"}}},"level":"info","message":"received a callback","requestID":"e0d1a048ecf33cbc6b8761d8ee472140"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"e0d1a048ecf33cbc6b8761d8ee472140","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"e0d1a048ecf33cbc6b8761d8ee472140"} device-1 | {"content":{"candidate":"candidate:1699929209 1 udp 2113937151 3aeb7362-adb0-4c16-a310-63e3b2eb583c.local 59145 typ host generation 0 ufrag AmgM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4135157098 1 udp 1677729535 141.24.211.56 59145 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag AmgM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1213580952 1 udp 33562623 141.24.210.113 60655 typ relay raddr 141.24.211.56 rport 59145 generation 0 ufrag AmgM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"29804a02-58ff-412a-951c-0e320dcf92ea","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/29804a02-58ff-412a-951c-0e320dcf92ea'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea'"} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","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/aca834d7-98ac-4620-8859-cb3df12bddd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aca2be1f1147584ef5a997ae03dde46c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aca2be1f1147584ef5a997ae03dde46c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"}}},"level":"info","message":"received a callback","requestID":"aca2be1f1147584ef5a997ae03dde46c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5e9f5fb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faca834d7-98ac-4620-8859-cb3df12bddd5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cf9b685-6502-4942-814e-345e4e64af54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.5693033} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.90836,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5e9f5fb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5","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":"5e9f5fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5e9f5fb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5 200 12ms","method":"GET","requestID":"5e9f5fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"aca2be1f1147584ef5a997ae03dde46c","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"aca2be1f1147584ef5a997ae03dde46c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ea468c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e762b1ed-8623-44e9-abce-57e2738da6d4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.6032424} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.749923,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ea468c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5ea468c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ea468c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling 200 12ms","method":"POST","requestID":"5ea468c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ea6d9c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1df61ed1-be7b-478b-a982-f4928bdf0082","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.6187868} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.570492,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ea6d9c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5ea6d9c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ea6d9c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling 200 13ms","method":"POST","requestID":"5ea6d9c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis","level":"info","message":"auth send jwt","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.138202,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541067,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e"} experiment-1 | {"level":"info","message":"GET /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e 200 14ms","method":"GET","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e","responseTime":14,"status":200,"url":"/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"66e0b375dcb8fe9d1fc6c0ba53385d3e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis","level":"info","message":"auth send jwt","requestID":"cd8f9a637c68c6c654f5f60858bb2060"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cd8f9a637c68c6c654f5f60858bb2060","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","requestID":"cd8f9a637c68c6c654f5f60858bb2060"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.301402,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cd8f9a637c68c6c654f5f60858bb2060","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541067,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd8f9a637c68c6c654f5f60858bb2060","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Attempting to finish experiment","requestID":"cd8f9a637c68c6c654f5f60858bb2060"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.280782,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541067,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5","device":"29804a02-58ff-412a-951c-0e320dcf92ea","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"13ee4874-325a-46ae-a5c1-f0fecf6be748","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faca834d7-98ac-4620-8859-cb3df12bddd5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faca834d7-98ac-4620-8859-cb3df12bddd5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"b9606d1c-f533-4fa7-a5c1-7c5c1b794c02","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.719822} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d15339f7239bc3cc4c9bf70db2c60077","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4856ce7b-eb75-42d3-8f0c-915ea304bb22","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.720313} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d15339f7239bc3cc4c9bf70db2c60077","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0c54e10014b1154b5a1932615a0409b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0c54e10014b1154b5a1932615a0409b8","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"}}},"level":"info","message":"received a callback","requestID":"d15339f7239bc3cc4c9bf70db2c60077"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"}}},"level":"info","message":"received a callback","requestID":"0c54e10014b1154b5a1932615a0409b8"} device-1 | {"data":{"peerconnection":"aca834d7-98ac-4620-8859-cb3df12bddd5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5 204 52ms","method":"DELETE","requestID":"5eb3ab00-86cf-11ef-b00e-2fb111b9dda5","responseTime":52,"status":204,"url":"/peerconnections/aca834d7-98ac-4620-8859-cb3df12bddd5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"},"level":"info","message":"Successfully finished experiment","requestID":"cd8f9a637c68c6c654f5f60858bb2060"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ebf1cb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ee4874-325a-46ae-a5c1-f0fecf6be748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1383c2db-a1e8-4f8f-9668-bb140e16442a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.7785037} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.882485,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ebf1cb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748","object_type":"device","rebac_allow":false,"scope_allow":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":"5ebf1cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe144a55b-4d53-47e5-9631-0dc109293e6e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe144a55b-4d53-47e5-9631-0dc109293e6e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5fba9451-f9a1-4b70-a06b-36dd239d8e75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.7846847} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ebf1cb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a3f4f71-f27e-460d-95ba-9bd0382dfcef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.7849314} device-1 | {"level":"info","message":"POST /devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling 200 14ms","method":"POST","requestID":"5ebf1cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cd8f9a637c68c6c654f5f60858bb2060","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ec1b4c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29804a02-58ff-412a-951c-0e320dcf92ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c78a7b0-dba2-4ade-b2d4-8b64ce677205","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.7949214} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.383378,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5ec1b4c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29804a02-58ff-412a-951c-0e320dcf92ea","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5ec1b4c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ec1b4c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling 200 13ms","method":"POST","requestID":"5ec1b4c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/29804a02-58ff-412a-951c-0e320dcf92ea/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e","requestID":"cd8f9a637c68c6c654f5f60858bb2060"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e 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":"cd8f9a637c68c6c654f5f60858bb2060"} experiment-1 | {"level":"info","message":"DELETE /experiments/e144a55b-4d53-47e5-9631-0dc109293e6e 204 175ms","method":"DELETE","requestID":"cd8f9a637c68c6c654f5f60858bb2060","responseTime":175,"status":204,"url":"/experiments/e144a55b-4d53-47e5-9631-0dc109293e6e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3623","request_time":"4.340","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"35ab4b3226ebf078c104404db0b06429"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"d15339f7239bc3cc4c9bf70db2c60077","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"d15339f7239bc3cc4c9bf70db2c60077"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"0c54e10014b1154b5a1932615a0409b8","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"0c54e10014b1154b5a1932615a0409b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis","level":"info","message":"auth send jwt","requestID":"67eb746101dfee925518d7e22001ad34"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"67eb746101dfee925518d7e22001ad34","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"67eb746101dfee925518d7e22001ad34"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/13ee4874-325a-46ae-a5c1-f0fecf6be748' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3089","request_time":"2.799","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9900dbbb3acf76c45f442c1ab11a2710"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.765059,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67eb746101dfee925518d7e22001ad34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541067,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","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/29804a02-58ff-412a-951c-0e320dcf92ea' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"186ca758-5ef5-48a4-8a5d-5ee63ae2cde4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.884372} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bede416f-4251-4984-a31c-b41c35295ccc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.8887606} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8f0b6cdd-8cef-402f-80a6-4d34834fda3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.89817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e9b6d01-0ba6-4919-a6bc-9c6d88151366","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.8983417} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"3d016327-68a1-49d9-857d-3fc37a64ef52","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.902508} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"67eb746101dfee925518d7e22001ad34"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"67eb746101dfee925518d7e22001ad34","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67eb746101dfee925518d7e22001ad34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis","level":"info","message":"auth send jwt","requestID":"1fabcad90824fcaaab51a0ede32d6005"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1fabcad90824fcaaab51a0ede32d6005"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.764854,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1fabcad90824fcaaab51a0ede32d6005","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541067,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2N30.tdsO7HcxSihzJ3wG8RgppN1z3uKF1CkbPk2kpSu6Jis"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c02966b4-1753-41c7-a90a-3d0e25e96d9c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.9245338} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b98f5699-a24b-4f56-9688-6ef342f5b5c7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.9301107} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f044d80c-b774-4507-880c-3695f866ea85","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.9452488} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"020a29ce-46b8-4317-b11e-972ecb00dd88","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.9454095} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"60f8699d-565c-4b17-af80-8334923e8172","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541067.9495325} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1fabcad90824fcaaab51a0ede32d6005"} gateway-1 | {"time_local":"10/Oct/2024:06:17:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1fabcad90824fcaaab51a0ede32d6005"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1fabcad90824fcaaab51a0ede32d6005","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OH0.Cavk9i7HRFfmocKRCcCGfaDIWHriamQxM388VDdut4I","level":"info","message":"auth send jwt","requestID":"5c5e50286e71d17ccc8c2cbc3488398c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c5e50286e71d17ccc8c2cbc3488398c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905607,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5c5e50286e71d17ccc8c2cbc3488398c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541068,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OH0.Cavk9i7HRFfmocKRCcCGfaDIWHriamQxM388VDdut4I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"29ab5cb9-a333-491a-9174-8272f0f1e8a0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541068.4413419} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edcc5c45-0423-488a-83ad-240430102334","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541068.4476914} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"96b2ace3-94e0-4c41-8d8f-934f9e72e1cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541068.4604635} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c5e50286e71d17ccc8c2cbc3488398c"} gateway-1 | {"time_local":"10/Oct/2024:06:17:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a3c30df2-b8f4-4194-ac01-7dc654737044 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5c5e50286e71d17ccc8c2cbc3488398c"} device-1 | {"level":"info","message":"PATCH /devices/a3c30df2-b8f4-4194-ac01-7dc654737044 200 34ms","method":"PATCH","requestID":"5c5e50286e71d17ccc8c2cbc3488398c","responseTime":34,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OH0.Cavk9i7HRFfmocKRCcCGfaDIWHriamQxM388VDdut4I","level":"info","message":"auth send jwt","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168704,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9184cc2f47f5fb4a3613cbcbd9b52088","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541068,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OH0.Cavk9i7HRFfmocKRCcCGfaDIWHriamQxM388VDdut4I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/websocket 200 19ms","method":"POST","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088","responseTime":19,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9184cc2f47f5fb4a3613cbcbd9b52088"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"504314a4d9f1e80cffd9516c3817961b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"504314a4d9f1e80cffd9516c3817961b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/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":"504314a4d9f1e80cffd9516c3817961b"} device-1 | {"level":"info","message":"OPTIONS /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/websocket 200 1ms","method":"OPTIONS","requestID":"504314a4d9f1e80cffd9516c3817961b","responseTime":1,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OX0.4GhS5nO10cL4GiXuHA2GMM6kYV0BA7YDF6NAgScFwVA","level":"info","message":"auth send jwt","requestID":"da43b71c600fc977104f5eff230c4e22"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da43b71c600fc977104f5eff230c4e22","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"da43b71c600fc977104f5eff230c4e22"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233785,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"da43b71c600fc977104f5eff230c4e22","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541069,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA2OX0.4GhS5nO10cL4GiXuHA2GMM6kYV0BA7YDF6NAgScFwVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da43b71c600fc977104f5eff230c4e22","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"da43b71c600fc977104f5eff230c4e22"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/websocket 200 22ms","method":"POST","requestID":"da43b71c600fc977104f5eff230c4e22","responseTime":22,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/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":"da43b71c600fc977104f5eff230c4e22"} device-1 | {"level":"info","message":"device 'http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d0daec7cefc88fcfa9dc648bcd5c0dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5d0daec7cefc88fcfa9dc648bcd5c0dd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d0daec7cefc88fcfa9dc648bcd5c0dd"} device-1 | {"level":"info","message":"OPTIONS /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 1ms","method":"OPTIONS","requestID":"5d0daec7cefc88fcfa9dc648bcd5c0dd","responseTime":1,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"a379aff16c9964e6c6e5928f588dce72"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a379aff16c9964e6c6e5928f588dce72","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a379aff16c9964e6c6e5928f588dce72"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162785,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a379aff16c9964e6c6e5928f588dce72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a379aff16c9964e6c6e5928f588dce72","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"f0ae1691-9eb1-42bc-8bcc-b7db724b1431","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.0712183} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a379aff16c9964e6c6e5928f588dce72","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20cea58b-1036-4e0f-adf6-79f8db47ade6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.0782542} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a379aff16c9964e6c6e5928f588dce72","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"6079b61e-78ae-490f-9c40-b11cd14984df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.089524} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a379aff16c9964e6c6e5928f588dce72","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a379aff16c9964e6c6e5928f588dce72"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a379aff16c9964e6c6e5928f588dce72"} device-1 | {"level":"info","message":"PATCH /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 35ms","method":"PATCH","requestID":"a379aff16c9964e6c6e5928f588dce72","responseTime":35,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188169,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"956b4349-943e-4642-a163-0ba12a788ed4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.1162055} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8"} device-1 | {"level":"info","message":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? 200 16ms","method":"GET","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8","responseTime":16,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f96e7c637f67a913ebc9e7b16d4aa2e8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"57c483230ceb22c88e497ba36cfeb1d9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"57c483230ceb22c88e497ba36cfeb1d9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57c483230ceb22c88e497ba36cfeb1d9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"57c483230ceb22c88e497ba36cfeb1d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57c483230ceb22c88e497ba36cfeb1d9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"ba63fea2-20f7-49da-9096-9b2f35932243","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.1394227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"57c483230ceb22c88e497ba36cfeb1d9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57c483230ceb22c88e497ba36cfeb1d9"} device-1 | {"level":"info","message":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 15ms","method":"GET","requestID":"57c483230ceb22c88e497ba36cfeb1d9","responseTime":15,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57c483230ceb22c88e497ba36cfeb1d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.817965,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3c25bc6da1f52f5b0a265374b76b8b1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to run experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to book experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully booked experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.155657,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.522695,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"f2a5c80f-5f00-45d3-9b74-cd053febe724","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.202456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"1391ea9d-855d-46d4-9361-10e744181104","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.2070339} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? 200 18ms","method":"GET","requestID":"60305ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 21ms","method":"GET","requestID":"6030ae10-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Setting up experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully set up experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"603bd1a0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully running experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.743841,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.989821,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54764","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17: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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"49cbabc8-5400-4805-95ad-7fa64fb95db8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.2792227} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e30b15c-d081-4e16-86ea-d2e863fec8bd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.2795613} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"66ddff91-dfe8-4f91-a0f5-dac729368291","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.2810366} authorization-1 | {"client_addr":"127.0.0.1:54764","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.350741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"603bd1a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","rebac_allow":false,"scope_allow":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":"603bd1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? 200 27ms","method":"GET","requestID":"603b0e50-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F306caf1d-3593-4271-bb83-25625dca39fe#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F306caf1d-3593-4271-bb83-25625dca39fe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"874246ec-9fb0-418c-a308-2e86544a129a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.288956} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0e9589c-cb2f-4ec9-b67d-a3a76f93a402","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.289282} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"603bd1a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling 200 25ms","method":"POST","requestID":"603bd1a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 30ms","method":"GET","requestID":"603b5c70-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60401760-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60408c90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c67d844-b47c-479d-91de-ba2d063572d2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.299058} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.01877,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60401760-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d","responseTime":149,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"60401760-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0597845-7a7c-4d74-8ee0-b824eb4ba1c7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3031266} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001654,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60408c90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","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":"60401760-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"60408c90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling 200 11ms","method":"POST","requestID":"60401760-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"392aaa30860198ab21ba2e4a695f5995"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"392aaa30860198ab21ba2e4a695f5995","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60408c90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling 200 10ms","method":"POST","requestID":"60408c90-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"392aaa30860198ab21ba2e4a695f5995"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60426150-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688832,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"392aaa30860198ab21ba2e4a695f5995","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"392aaa30860198ab21ba2e4a695f5995","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b62a3649-0f90-47e4-ba5d-f59503876b77","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3129265} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.407316,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60426150-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"60426150-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"0934f71b-42da-4c5d-afe9-44378836ec43","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.314831} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"392aaa30860198ab21ba2e4a695f5995","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60426150-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling 200 9ms","method":"POST","requestID":"60426150-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"392aaa30860198ab21ba2e4a695f5995"} device-1 | {"level":"info","message":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? 200 11ms","method":"GET","requestID":"392aaa30860198ab21ba2e4a695f5995","responseTime":11,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"392aaa30860198ab21ba2e4a695f5995"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU","level":"info","message":"auth send jwt","requestID":"76b597a86be018df438787bf940f7b87"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76b597a86be018df438787bf940f7b87","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76b597a86be018df438787bf940f7b87"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54748","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732184,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.513172,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76b597a86be018df438787bf940f7b87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76b597a86be018df438787bf940f7b87","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.898140479Z"}]},"request_id":"37418e96-dfd9-4798-bfb2-4e3bd6dbfb24","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3290453} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"ea1a9431-ee8b-4d19-8b9f-7248fba88738","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3299391} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:47.945205400Z"}]},"request_id":"6b002b3c-76f3-4668-9059-21ab2785481b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3332431} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"76b597a86be018df438787bf940f7b87","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a3c30df2-b8f4-4194-ac01-7dc654737044? 200 15ms","method":"GET","requestID":"60440f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 15ms","method":"GET","requestID":"60443610-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Building connection plan","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} 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":"dc21d214-0713-4a5b-a6ae-b8dea7c0120e"},{"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":"e79025e8-a555-4ed9-a92a-ae73a959b111"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"965d6386-2d5b-4970-ab11-b68d94414c65"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76b597a86be018df438787bf940f7b87"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76b597a86be018df438787bf940f7b87"} device-1 | {"level":"info","message":"GET /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92? 200 12ms","method":"GET","requestID":"76b597a86be018df438787bf940f7b87","responseTime":12,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.636433,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541070,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3MH0.Up_JYmgmsQVn-GR_YHOHXhJ0a1MaHrWQkyDBE8JenOU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8bf1a10e-ae60-4822-afcc-c2f3bec688be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3481822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a119f8e-16f7-428e-a0b9-c1bf156fc5a8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3484209} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b'","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b'","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6046ce20-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3c25bc6da1f52f5b0a265374b76b8b1d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"604dfa10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85661c58-711f-4d70-9415-bf31de3bd27f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3892236} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.328462,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"604dfa10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"604dfa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"604dfa10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling 200 8ms","method":"POST","requestID":"604dfa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"604f59a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"059ec81d-34b8-457b-8074-ea7f0112f48d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541070.3990352} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.860837,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"604f59a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"604f59a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"604f59a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling 200 10ms","method":"POST","requestID":"604f59a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling"} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4554004556593760996 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:67eS\r\na=ice-pwd:hXf541eCskWPJTrfljPsETIx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 34:49:DB:23:AD:F6:6A:4F:E7:E6:7A:9C:AB:1E:E2:AD:6B:28:A2:94:7D:1A:43:72:32:F9:1E:C4:26:C3:D7:97\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2818393809 1 udp 2113937151 70c89470-9fe0-498c-b51b-9a20fb913e6e.local 33141 typ host generation 0 ufrag 67eS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","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/189e4618-d913-4a9e-8bcc-ffd6bd84186b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:600845486 1 udp 1677729535 141.24.211.56 33141 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 67eS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dbbd784ad0cc3aa208371742b6fb88e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2dbbd784ad0cc3aa208371742b6fb88e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"}}},"level":"info","message":"received a callback","requestID":"2dbbd784ad0cc3aa208371742b6fb88e"} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"2dbbd784ad0cc3aa208371742b6fb88e","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"2dbbd784ad0cc3aa208371742b6fb88e"} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","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/189e4618-d913-4a9e-8bcc-ffd6bd84186b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd41225ae177f88d08782a45fd7cf33a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cd41225ae177f88d08782a45fd7cf33a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"}}},"level":"info","message":"received a callback","requestID":"cd41225ae177f88d08782a45fd7cf33a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"618e4240-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F189e4618-d913-4a9e-8bcc-ffd6bd84186b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf2a7e7e-5094-409a-afcf-7973f353892f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.4907606} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.41727,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"618e4240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b","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":"618e4240-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"618e4240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b 200 11ms","method":"GET","requestID":"618e4240-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"cd41225ae177f88d08782a45fd7cf33a","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"cd41225ae177f88d08782a45fd7cf33a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61932440-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb7f8cb9-e971-400e-9fb4-462491404871","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.5226836} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.348736,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"61932440-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"61932440-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61932440-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling 200 13ms","method":"POST","requestID":"61932440-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61956e30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d34b765-f845-4a6b-a616-04baf3efe95a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.538165} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.391989,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"61956e30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"61956e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61956e30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling 200 13ms","method":"POST","requestID":"61956e30-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg","level":"info","message":"auth send jwt","requestID":"3cfc5223a61088bb94ef899322bbfd68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3cfc5223a61088bb94ef899322bbfd68","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/306caf1d-3593-4271-bb83-25625dca39fe","requestID":"3cfc5223a61088bb94ef899322bbfd68"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.633516,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3cfc5223a61088bb94ef899322bbfd68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541072,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3cfc5223a61088bb94ef899322bbfd68","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/306caf1d-3593-4271-bb83-25625dca39fe","requestID":"3cfc5223a61088bb94ef899322bbfd68"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/306caf1d-3593-4271-bb83-25625dca39fe HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cfc5223a61088bb94ef899322bbfd68"} experiment-1 | {"level":"info","message":"GET /experiments/306caf1d-3593-4271-bb83-25625dca39fe 200 15ms","method":"GET","requestID":"3cfc5223a61088bb94ef899322bbfd68","responseTime":15,"status":200,"url":"/experiments/306caf1d-3593-4271-bb83-25625dca39fe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg","level":"info","message":"auth send jwt","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/306caf1d-3593-4271-bb83-25625dca39fe","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.158151,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541072,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Attempting to finish experiment","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.134384,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541072,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b","device":"129e6c61-7ade-4b5c-9830-918e79d9ee92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a3c30df2-b8f4-4194-ac01-7dc654737044","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F189e4618-d913-4a9e-8bcc-ffd6bd84186b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F189e4618-d913-4a9e-8bcc-ffd6bd84186b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d9f2870d-82f1-4303-8d53-54d3bbeae349","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.6347225} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e7e7a31-1da7-4517-b44f-6969c9b8c294","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.6350353} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f5b03294011e447bc1522d31e3b544c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f5b03294011e447bc1522d31e3b544c0","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bc5dd04c1a463a6f676b44b92e36c73","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8bc5dd04c1a463a6f676b44b92e36c73","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"}}},"level":"info","message":"received a callback","requestID":"f5b03294011e447bc1522d31e3b544c0"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"}}},"level":"info","message":"received a callback","requestID":"8bc5dd04c1a463a6f676b44b92e36c73"} device-1 | {"data":{"peerconnection":"189e4618-d913-4a9e-8bcc-ffd6bd84186b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b 204 43ms","method":"DELETE","requestID":"61a23f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":43,"status":204,"url":"/peerconnections/189e4618-d913-4a9e-8bcc-ffd6bd84186b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/306caf1d-3593-4271-bb83-25625dca39fe"},"level":"info","message":"Successfully finished experiment","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61ac0370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F129e6c61-7ade-4b5c-9830-918e79d9ee92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdbf9d7b-2a51-4b17-a61b-2e8d2f2a118a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.6866016} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.074854,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"61ac0370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92","object_type":"device","rebac_allow":false,"scope_allow":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":"61ac0370-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61ac0370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling 200 14ms","method":"POST","requestID":"61ac0370-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/129e6c61-7ade-4b5c-9830-918e79d9ee92/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F306caf1d-3593-4271-bb83-25625dca39fe': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F306caf1d-3593-4271-bb83-25625dca39fe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"535c7db1-0880-4594-9df2-ef1128942d8d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.6930726} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af2f141e-d581-4f1e-88fa-89f5975bf060","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.694046} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61ae9b80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3c30df2-b8f4-4194-ac01-7dc654737044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5aadeef8-5e36-41d8-a542-b537bf794174","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.701974} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.94473,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"61ae9b80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"61ae9b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61ae9b80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling 200 11ms","method":"POST","requestID":"61ae9b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a3c30df2-b8f4-4194-ac01-7dc654737044/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/306caf1d-3593-4271-bb83-25625dca39fe","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/306caf1d-3593-4271-bb83-25625dca39fe 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":"4ad51c1fafd4340ea4198bb8a56cf4a4"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +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.265","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d62234e47637e22ec72b30822212550b"} experiment-1 | {"level":"info","message":"DELETE /experiments/306caf1d-3593-4271-bb83-25625dca39fe 204 155ms","method":"DELETE","requestID":"4ad51c1fafd4340ea4198bb8a56cf4a4","responseTime":155,"status":204,"url":"/experiments/306caf1d-3593-4271-bb83-25625dca39fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"f5b03294011e447bc1522d31e3b544c0","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"f5b03294011e447bc1522d31e3b544c0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"8bc5dd04c1a463a6f676b44b92e36c73","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"8bc5dd04c1a463a6f676b44b92e36c73"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg","level":"info","message":"auth send jwt","requestID":"6182c885af0b699b33c566eb314374d8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6182c885af0b699b33c566eb314374d8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6182c885af0b699b33c566eb314374d8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.855868,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6182c885af0b699b33c566eb314374d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541072,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.755","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f08dbb7cdfb00862ec20a5fbe1be370b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a3c30df2-b8f4-4194-ac01-7dc654737044' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"78a3d395-5e0f-4bd4-821f-ac9ae7a39f93","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.7787097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bca8a827-8669-48de-9e15-e9b881315654","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.7829864} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","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/129e6c61-7ade-4b5c-9830-918e79d9ee92' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"67fcf26b-20e8-4f1d-bf07-b95af889346d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.7927816} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f742b22-d5a4-4904-b92b-e8dc244e1807","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.7930222} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"e776dc25-8210-442e-aad2-e2813339367e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.8018045} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6182c885af0b699b33c566eb314374d8"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6182c885af0b699b33c566eb314374d8"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"6182c885af0b699b33c566eb314374d8","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg","level":"info","message":"auth send jwt","requestID":"51bf2c1a3b9688ffc07747e26e40037d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"51bf2c1a3b9688ffc07747e26e40037d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.884062,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"51bf2c1a3b9688ffc07747e26e40037d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541072,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3Mn0.Q3Rc742vBC59dLltWQa2xtBVZNMGvfZtWozHPDUtpHg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3b6012f8-83ab-4e78-a133-714e52ba697f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.8350165} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a6b0ea7-7b45-439f-946a-032b897a414c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.839661} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f5e6b76b-7ae3-456f-b375-f00b2c92473d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.8507707} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eceda377-022d-4862-b2f1-f45ea6045f73","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.8509283} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"da094238-efc3-4d46-9339-8311bc3b7dd1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541072.8547647} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"51bf2c1a3b9688ffc07747e26e40037d"} gateway-1 | {"time_local":"10/Oct/2024:06:17:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51bf2c1a3b9688ffc07747e26e40037d"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"51bf2c1a3b9688ffc07747e26e40037d","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3M30.CmqJm7MHnhzpYOsfclqiW2HgeUWwjA5kbm6rV5OGfIE","level":"info","message":"auth send jwt","requestID":"9b4cbe18eaa815351bb84278ee45fc58"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9b4cbe18eaa815351bb84278ee45fc58","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9b4cbe18eaa815351bb84278ee45fc58"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77133,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9b4cbe18eaa815351bb84278ee45fc58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541073,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3M30.CmqJm7MHnhzpYOsfclqiW2HgeUWwjA5kbm6rV5OGfIE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b4cbe18eaa815351bb84278ee45fc58","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"922d119c-922a-4435-bbd5-efcb28cfc219","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541073.3435295} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b4cbe18eaa815351bb84278ee45fc58","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ffb8621-faed-4845-86bb-d4b2afa934af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541073.3499095} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9b4cbe18eaa815351bb84278ee45fc58","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"8e6aeb76-0a02-4ecf-b752-0388ea0e90d0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541073.3628836} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b4cbe18eaa815351bb84278ee45fc58","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9b4cbe18eaa815351bb84278ee45fc58"} device-1 | {"level":"info","message":"PATCH /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd 200 35ms","method":"PATCH","requestID":"9b4cbe18eaa815351bb84278ee45fc58","responseTime":35,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"} gateway-1 | {"time_local":"10/Oct/2024:06:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9b4cbe18eaa815351bb84278ee45fc58"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3M30.CmqJm7MHnhzpYOsfclqiW2HgeUWwjA5kbm6rV5OGfIE","level":"info","message":"auth send jwt","requestID":"b3e7458bc1a155d1ad93d6b380818957"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3e7458bc1a155d1ad93d6b380818957","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b3e7458bc1a155d1ad93d6b380818957"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132021,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b3e7458bc1a155d1ad93d6b380818957","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541073,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3M30.CmqJm7MHnhzpYOsfclqiW2HgeUWwjA5kbm6rV5OGfIE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3e7458bc1a155d1ad93d6b380818957","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b3e7458bc1a155d1ad93d6b380818957"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/websocket 200 23ms","method":"POST","requestID":"b3e7458bc1a155d1ad93d6b380818957","responseTime":23,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:17:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b3e7458bc1a155d1ad93d6b380818957"} device-1 | {"level":"info","message":"device 'http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8848a1e1cdff70955e7c01c19f1bf5ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8848a1e1cdff70955e7c01c19f1bf5ce","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/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":"8848a1e1cdff70955e7c01c19f1bf5ce"} device-1 | {"level":"info","message":"OPTIONS /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/websocket 200 1ms","method":"OPTIONS","requestID":"8848a1e1cdff70955e7c01c19f1bf5ce","responseTime":1,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NH0.gk-1ljfmxbEOc04Jq1dg8vNXD49oVkF9J9y6Gb61HyU","level":"info","message":"auth send jwt","requestID":"830123cffffb7b4256845f4e2106b7aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"830123cffffb7b4256845f4e2106b7aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"830123cffffb7b4256845f4e2106b7aa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084047,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"830123cffffb7b4256845f4e2106b7aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541074,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NH0.gk-1ljfmxbEOc04Jq1dg8vNXD49oVkF9J9y6Gb61HyU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"830123cffffb7b4256845f4e2106b7aa","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"830123cffffb7b4256845f4e2106b7aa"} gateway-1 | {"time_local":"10/Oct/2024:06:17:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/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":"830123cffffb7b4256845f4e2106b7aa"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/websocket 200 21ms","method":"POST","requestID":"830123cffffb7b4256845f4e2106b7aa","responseTime":21,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"084f0bf942a37c81b26582ad5bde565b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"084f0bf942a37c81b26582ad5bde565b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:17:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"084f0bf942a37c81b26582ad5bde565b"} device-1 | {"level":"info","message":"OPTIONS /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 1ms","method":"OPTIONS","requestID":"084f0bf942a37c81b26582ad5bde565b","responseTime":1,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NH0.gk-1ljfmxbEOc04Jq1dg8vNXD49oVkF9J9y6Gb61HyU","level":"info","message":"auth send jwt","requestID":"cca113c575efa873c35af1272d08ca15"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cca113c575efa873c35af1272d08ca15","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cca113c575efa873c35af1272d08ca15"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300984,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cca113c575efa873c35af1272d08ca15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541074,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NH0.gk-1ljfmxbEOc04Jq1dg8vNXD49oVkF9J9y6Gb61HyU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cca113c575efa873c35af1272d08ca15","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"faeb7ed0-f6ce-497b-811d-532a37bfe04c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541074.9882452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cca113c575efa873c35af1272d08ca15","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0d518e5-ba0c-42e0-89c9-83c10d65d0fb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541074.9965413} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"cca113c575efa873c35af1272d08ca15","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"5acbdf5c-8c22-4c44-b76e-ad7fdfcd2588","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.0068877} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cca113c575efa873c35af1272d08ca15","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cca113c575efa873c35af1272d08ca15"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cca113c575efa873c35af1272d08ca15"} device-1 | {"level":"info","message":"PATCH /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 36ms","method":"PATCH","requestID":"cca113c575efa873c35af1272d08ca15","responseTime":36,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk","level":"info","message":"auth send jwt","requestID":"c216f0110cd769c09db7150d600fe4a4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c216f0110cd769c09db7150d600fe4a4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c216f0110cd769c09db7150d600fe4a4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.301427,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c216f0110cd769c09db7150d600fe4a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c216f0110cd769c09db7150d600fe4a4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"942f1eaf-c7de-4f61-933e-6020e250d85d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.0352116} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c216f0110cd769c09db7150d600fe4a4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c216f0110cd769c09db7150d600fe4a4"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c216f0110cd769c09db7150d600fe4a4"} device-1 | {"level":"info","message":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? 200 16ms","method":"GET","requestID":"c216f0110cd769c09db7150d600fe4a4","responseTime":16,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk","level":"info","message":"auth send jwt","requestID":"e4a5d23e5da5969213aa580a93064cf0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e4a5d23e5da5969213aa580a93064cf0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4a5d23e5da5969213aa580a93064cf0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.301151,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e4a5d23e5da5969213aa580a93064cf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4a5d23e5da5969213aa580a93064cf0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"696bc2ba-ce6d-4a5a-9d01-85a4c154da46","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.058296} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4a5d23e5da5969213aa580a93064cf0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4a5d23e5da5969213aa580a93064cf0"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4a5d23e5da5969213aa580a93064cf0"} device-1 | {"level":"info","message":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 15ms","method":"GET","requestID":"e4a5d23e5da5969213aa580a93064cf0","responseTime":15,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk","level":"info","message":"auth send jwt","requestID":"6cb2b76120ee502c0a3b91602031a58b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6cb2b76120ee502c0a3b91602031a58b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6cb2b76120ee502c0a3b91602031a58b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.162273,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6cb2b76120ee502c0a3b91602031a58b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6cb2b76120ee502c0a3b91602031a58b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to run experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to book experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully booked experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.254628,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.432463,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"999a4d17-c628-42ee-af54-c33d120de595","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.1232533} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"1cae5b19-5a2a-4ced-ae85-0962526c3aef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.124499} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? 200 20ms","method":"GET","requestID":"631f1b70-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 19ms","method":"GET","requestID":"631f6990-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Setting up experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully set up experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"632b0250-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.516478,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully running experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.372967,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ce2f7fc-c77d-4f91-af2f-929d8d9fea13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.1960177} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.499968,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"632b0250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","rebac_allow":false,"scope_allow":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":"632b0250-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"1d5ef1fa-3df8-4475-90c7-d4fdeb26a434","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.1998346} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"e414c739-e49f-4684-bfe0-8d87b4b960de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2033496} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"632b0250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling 200 18ms","method":"POST","requestID":"632b0250-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"632eabd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 29ms","method":"GET","requestID":"632ab430-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1b2c162b-428c-4ede-9777-5a912ba880a9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1b2c162b-428c-4ede-9777-5a912ba880a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"14176dc0-8eed-4fe5-b94a-68a56cc88ae0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2161124} device-1 | {"level":"info","message":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? 200 32ms","method":"GET","requestID":"632a6610-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"768c2cc3-c46a-4bec-abee-3bbbc56cbc06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2163281} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"6cb2b76120ee502c0a3b91602031a58b","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f0a69c9-af53-4390-8906-52691dced042","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.22029} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"632fbd40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.894825,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"632eabd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"632eabd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"632eabd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling 200 14ms","method":"POST","requestID":"632eabd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47814d1a-381e-4ed1-b2d0-d310b68eb080","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2284129} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6cb2b76120ee502c0a3b91602031a58b"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"6cb2b76120ee502c0a3b91602031a58b","responseTime":160,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.831052,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"632fbd40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","rebac_allow":false,"scope_allow":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":"632fbd40-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"632fbd40-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk","level":"info","message":"auth send jwt","requestID":"4b5e19001f0bdd52cab484c9f10c3100"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling 200 17ms","method":"POST","requestID":"632fbd40-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b5e19001f0bdd52cab484c9f10c3100","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b5e19001f0bdd52cab484c9f10c3100"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6332a370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.001444,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b5e19001f0bdd52cab484c9f10c3100","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b5e19001f0bdd52cab484c9f10c3100","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51e7a6f0-374d-4430-b244-0de7fc31f91f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2454984} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.813082,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6332a370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6332a370-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"28f09bdd-7bf3-417a-afaf-6a0770787efc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2478125} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b5e19001f0bdd52cab484c9f10c3100","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6332a370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling 200 15ms","method":"POST","requestID":"6332a370-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b5e19001f0bdd52cab484c9f10c3100"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b5e19001f0bdd52cab484c9f10c3100"} device-1 | {"level":"info","message":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? 200 17ms","method":"GET","requestID":"4b5e19001f0bdd52cab484c9f10c3100","responseTime":17,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk","level":"info","message":"auth send jwt","requestID":"a77f431738befa52fdeaa2d554ae5d99"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a77f431738befa52fdeaa2d554ae5d99","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a77f431738befa52fdeaa2d554ae5d99"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246829,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904928,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.014577,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a77f431738befa52fdeaa2d554ae5d99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a77f431738befa52fdeaa2d554ae5d99","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.792725200Z"}]},"request_id":"88f0344f-d38c-468c-ae29-9c8dbd3f0370","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2693336} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"ef98be7f-a790-48d3-b86e-2d49a4e7a062","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2704515} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:52.850728906Z"}]},"request_id":"6516a51c-eced-4b6d-a438-25fb480da220","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.276663} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a77f431738befa52fdeaa2d554ae5d99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd? 200 24ms","method":"GET","requestID":"63353b80-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 23ms","method":"GET","requestID":"633589a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Building connection plan","requestID":"6cb2b76120ee502c0a3b91602031a58b"} 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":"e6486e18-9434-430b-bbc7-1cbbaa50a3f1"},{"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":"29fa80dd-7daf-4235-b7f4-1e7ac69047a0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2c5a7c99-ffb0-4957-9879-060d08f6680c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6cb2b76120ee502c0a3b91602031a58b"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6cb2b76120ee502c0a3b91602031a58b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a77f431738befa52fdeaa2d554ae5d99"} gateway-1 | {"time_local":"10/Oct/2024:06:17:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a77f431738befa52fdeaa2d554ae5d99"} device-1 | {"level":"info","message":"GET /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3? 200 22ms","method":"GET","requestID":"a77f431738befa52fdeaa2d554ae5d99","responseTime":22,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.907423,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541075,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3NX0._Sy-OzghzpIhZbMirDTPrKVffprxPcwfJ-m9Qca83hk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"dec1cbb2-e526-4eaf-aec3-0905845d5271","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.2971845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ba9d47b-2570-418f-83a0-17ead30662ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.297405} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f'","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f'","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} 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":"63395a30-86cf-11ef-b00e-2fb111b9dda5","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":"63395a30-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6cb2b76120ee502c0a3b91602031a58b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6342f720-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8b337df-cbf9-408e-be65-3ab81996a6a1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.3514178} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.943507,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6342f720-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6342f720-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6342f720-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling 200 9ms","method":"POST","requestID":"6342f720-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6344a4d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5e73e03-6cf7-4356-83ac-d298a63eb3a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541075.36086} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.74922,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6344a4d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6344a4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6344a4d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling 200 8ms","method":"POST","requestID":"6344a4d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling"} device-1 | {"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 160393771009882015 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:SJPV\r\na=ice-pwd:avlb+8qMPPC238PiLg4yPYeX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 39:BD:85:9C:31:45:74:05:E7:1B:28:2A:B9:4E:DF:37:45:E5:A8:3E:19:5F:13:4D:B2:50:B5:4C:F5:00:BF:03\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3023001624 1 udp 2113937151 ff7cc2ff-672d-4139-92a6-e9c5fc143759.local 41100 typ host generation 0 ufrag SJPV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:805450343 1 udp 1677729535 141.24.211.56 41100 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag SJPV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","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/3746a485-41a1-40b0-a079-be74a114cf2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fbc72997ccb0c47609e8ac9b79136e72","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/37f5708c-f1f0-438d-901b-5b9c552c0ea3'"} device-1 | {"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fbc72997ccb0c47609e8ac9b79136e72","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"}}},"level":"info","message":"received a callback","requestID":"fbc72997ccb0c47609e8ac9b79136e72"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"fbc72997ccb0c47609e8ac9b79136e72","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"fbc72997ccb0c47609e8ac9b79136e72"} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","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/3746a485-41a1-40b0-a079-be74a114cf2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4764a4ea2873052564e85b9c9afe7c86","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4764a4ea2873052564e85b9c9afe7c86","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"}}},"level":"info","message":"received a callback","requestID":"4764a4ea2873052564e85b9c9afe7c86"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"648191a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3746a485-41a1-40b0-a079-be74a114cf2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5572bb6-4cfd-44d9-a698-c1959ed59b42","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.439495} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.235064,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"648191a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f","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":"648191a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"648191a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f 200 10ms","method":"GET","requestID":"648191a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"4764a4ea2873052564e85b9c9afe7c86","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"4764a4ea2873052564e85b9c9afe7c86"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6485d760-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee650bb9-b037-49b1-90ae-fc8ff913751c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.4685314} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.695341,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6485d760-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6485d760-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6485d760-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling 200 12ms","method":"POST","requestID":"6485d760-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64882150-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07109ee3-7879-41be-8dbe-e1ad5028863e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.4833226} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.37238,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64882150-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"64882150-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64882150-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling 200 12ms","method":"POST","requestID":"64882150-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ","level":"info","message":"auth send jwt","requestID":"76dd32dfae29f11d2863ed1774efc09e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"76dd32dfae29f11d2863ed1774efc09e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","requestID":"76dd32dfae29f11d2863ed1774efc09e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.280959,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76dd32dfae29f11d2863ed1774efc09e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541077,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76dd32dfae29f11d2863ed1774efc09e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","requestID":"76dd32dfae29f11d2863ed1774efc09e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76dd32dfae29f11d2863ed1774efc09e"} experiment-1 | {"level":"info","message":"GET /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9 200 16ms","method":"GET","requestID":"76dd32dfae29f11d2863ed1774efc09e","responseTime":16,"status":200,"url":"/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ","level":"info","message":"auth send jwt","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"73d9e89ee70c285f5171c70d6cfe83ff","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.311239,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d9e89ee70c285f5171c70d6cfe83ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541077,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73d9e89ee70c285f5171c70d6cfe83ff","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Attempting to finish experiment","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.627217,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541077,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f","device":"37f5708c-f1f0-438d-901b-5b9c552c0ea3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a851fbb80d6fc8d6d6e0d19fb5e5271f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a851fbb80d6fc8d6d6e0d19fb5e5271f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3746a485-41a1-40b0-a079-be74a114cf2f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3746a485-41a1-40b0-a079-be74a114cf2f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"2d9ff2f7-73a0-4114-ae68-bf36924ce3e9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.6043687} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e101613eb7812e901c1ae3288231a71c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"}}},"level":"info","message":"received a callback","requestID":"a851fbb80d6fc8d6d6e0d19fb5e5271f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e101613eb7812e901c1ae3288231a71c","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"551a020c-7218-4412-8097-e62f81ae6496","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.604977} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"}}},"level":"info","message":"received a callback","requestID":"e101613eb7812e901c1ae3288231a71c"} device-1 | {"data":{"peerconnection":"3746a485-41a1-40b0-a079-be74a114cf2f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f 204 53ms","method":"DELETE","requestID":"64965220-86cf-11ef-b00e-2fb111b9dda5","responseTime":53,"status":204,"url":"/peerconnections/3746a485-41a1-40b0-a079-be74a114cf2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"},"level":"info","message":"Successfully finished experiment","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64a19cc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37f5708c-f1f0-438d-901b-5b9c552c0ea3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dce3cb76-edc2-4df7-9718-0ed4e5f2cd3c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.6515026} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.825447,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64a19cc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"64a19cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64a19cc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling 200 13ms","method":"POST","requestID":"64a19cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1b2c162b-428c-4ede-9777-5a912ba880a9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1b2c162b-428c-4ede-9777-5a912ba880a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"38175d91-1b2e-4203-a641-eca7966a84d5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.6585364} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06ce3dcd-e982-4907-ab57-6d4b56473fe0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.659483} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64a40dc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"73d9e89ee70c285f5171c70d6cfe83ff","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"934eafcb-a8c3-4c4c-b00f-dcd9620e6a50","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.6679373} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.941568,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"64a40dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd","object_type":"device","rebac_allow":false,"scope_allow":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":"64a40dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64a40dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling 200 14ms","method":"POST","requestID":"64a40dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73d9e89ee70c285f5171c70d6cfe83ff"} experiment-1 | {"level":"info","message":"DELETE /experiments/1b2c162b-428c-4ede-9777-5a912ba880a9 204 164ms","method":"DELETE","requestID":"73d9e89ee70c285f5171c70d6cfe83ff","responseTime":164,"status":204,"url":"/experiments/1b2c162b-428c-4ede-9777-5a912ba880a9"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +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.322","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b34a42d811e36ce8e6bd5efce271ccf1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"a851fbb80d6fc8d6d6e0d19fb5e5271f","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"a851fbb80d6fc8d6d6e0d19fb5e5271f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"e101613eb7812e901c1ae3288231a71c","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:17: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"e101613eb7812e901c1ae3288231a71c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ","level":"info","message":"auth send jwt","requestID":"0acc6ea4fd83ec6e8bb897240e297164"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0acc6ea4fd83ec6e8bb897240e297164","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0acc6ea4fd83ec6e8bb897240e297164"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.799","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"713cbfad8352bd90872cc0e0178a35a5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.157032,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0acc6ea4fd83ec6e8bb897240e297164","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541077,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","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/234bd82d-a2b6-4ac8-b73f-9f0b7ba134fd' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"442e35d3-a6e7-4db9-b067-5ac75b884ebd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7463884} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb8f4a77-3efe-4906-91e6-22dd106b0d49","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7509189} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/37f5708c-f1f0-438d-901b-5b9c552c0ea3' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f6423256-ee38-449b-94d6-0c8f5a516950","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7595527} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71024251-c79d-4263-baff-2bae81a7f701","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7596471} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"27625504-2f1b-48e0-b8ae-290d3c5bd11b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.763929} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0acc6ea4fd83ec6e8bb897240e297164"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0acc6ea4fd83ec6e8bb897240e297164"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"0acc6ea4fd83ec6e8bb897240e297164","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ","level":"info","message":"auth send jwt","requestID":"b37960595a00bff1736b0bc065dce492"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b37960595a00bff1736b0bc065dce492"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.783889,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b37960595a00bff1736b0bc065dce492","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541077,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3N30.sVQp0nZo9Q4xYhQCfaMxB8bVB4rTuwgvw_lNDbsriTQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"777cc4a4-7497-4fb2-878f-7568b405ff6d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7865543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6ebc680-e8d1-42c6-8c16-615dccb26c9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.7908216} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3d1bcd54-c137-4ad1-bded-97f36a6c44f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.8066983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc69ab9e-8e9e-4f1b-bbd1-19ff3505e621","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.8069544} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"ece9a4f0-a0a5-4c45-ac45-1a8de3d29654","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541077.8109133} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b37960595a00bff1736b0bc065dce492"} gateway-1 | {"time_local":"10/Oct/2024:06:17:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b37960595a00bff1736b0bc065dce492"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"b37960595a00bff1736b0bc065dce492","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"c7b7fa6937c8837c847df45f90e82b28"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7b7fa6937c8837c847df45f90e82b28","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"2ce23ceaa945074b1356a49a94ea35bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2ce23ceaa945074b1356a49a94ea35bc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c7b7fa6937c8837c847df45f90e82b28"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2ce23ceaa945074b1356a49a94ea35bc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924438,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c7b7fa6937c8837c847df45f90e82b28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7b7fa6937c8837c847df45f90e82b28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61116,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2ce23ceaa945074b1356a49a94ea35bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ce23ceaa945074b1356a49a94ea35bc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"321bc705-c7f2-49d3-8139-4d94adee2bd3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.2885776} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7b7fa6937c8837c847df45f90e82b28","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"19eda32e-2440-4b6f-b9d7-ffd4cbc05d16","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.2896469} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ce23ceaa945074b1356a49a94ea35bc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b5548a9-cfa0-4342-9c5b-8cbc5a992b49","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.2954147} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c7b7fa6937c8837c847df45f90e82b28","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72a90434-5238-40ee-b091-9071014fd8cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.2965617} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2ce23ceaa945074b1356a49a94ea35bc","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"5416a3fc-b6dd-4670-be3d-84766529113f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.2988536} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2ce23ceaa945074b1356a49a94ea35bc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2ce23ceaa945074b1356a49a94ea35bc"} device-1 | {"level":"info","message":"PATCH /devices/d47b6829-bb80-41a3-9150-13fc9868839e 200 20ms","method":"PATCH","requestID":"2ce23ceaa945074b1356a49a94ea35bc","responseTime":20,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d47b6829-bb80-41a3-9150-13fc9868839e HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2ce23ceaa945074b1356a49a94ea35bc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"128963739e6456eed2d1f2edd74f43ec"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"128963739e6456eed2d1f2edd74f43ec","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"128963739e6456eed2d1f2edd74f43ec"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216279,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"128963739e6456eed2d1f2edd74f43ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"128963739e6456eed2d1f2edd74f43ec","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"d620343d-748c-4997-8eea-9466206f6ac1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.3099964} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7b7fa6937c8837c847df45f90e82b28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c7b7fa6937c8837c847df45f90e82b28"} device-1 | {"level":"info","message":"PATCH /devices/49492a60-43ac-42cf-9494-229146d7f217 200 36ms","method":"PATCH","requestID":"c7b7fa6937c8837c847df45f90e82b28","responseTime":36,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/49492a60-43ac-42cf-9494-229146d7f217 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c7b7fa6937c8837c847df45f90e82b28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"5058f7ad7e98a765fa907b42483dbe76"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5058f7ad7e98a765fa907b42483dbe76","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5058f7ad7e98a765fa907b42483dbe76"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661502,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"128963739e6456eed2d1f2edd74f43ec"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5058f7ad7e98a765fa907b42483dbe76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"128963739e6456eed2d1f2edd74f43ec"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5058f7ad7e98a765fa907b42483dbe76","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/websocket 200 23ms","method":"POST","requestID":"128963739e6456eed2d1f2edd74f43ec","responseTime":23,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5058f7ad7e98a765fa907b42483dbe76"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5058f7ad7e98a765fa907b42483dbe76"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/websocket 200 20ms","method":"POST","requestID":"5058f7ad7e98a765fa907b42483dbe76","responseTime":20,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71318,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"62c04286-473e-4150-be8c-4c43c4f90c6d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.3819282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2"} device-1 | {"level":"info","message":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? 200 15ms","method":"GET","requestID":"e8a1fe65b19c9d4f391e2c5baf632bb2","responseTime":15,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"8cfac226ac275e224798badb2817363e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8cfac226ac275e224798badb2817363e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8cfac226ac275e224798badb2817363e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333225,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8cfac226ac275e224798badb2817363e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8cfac226ac275e224798badb2817363e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"f927b7a3-21cd-48d1-8487-83915456daf0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.4054954} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8cfac226ac275e224798badb2817363e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8cfac226ac275e224798badb2817363e"} device-1 | {"level":"info","message":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? 200 15ms","method":"GET","requestID":"8cfac226ac275e224798badb2817363e","responseTime":15,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8cfac226ac275e224798badb2817363e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"0ab02d89681bf14b6e851c83d79042c0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0ab02d89681bf14b6e851c83d79042c0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0ab02d89681bf14b6e851c83d79042c0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.549715,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0ab02d89681bf14b6e851c83d79042c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ab02d89681bf14b6e851c83d79042c0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to run experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to book experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully booked experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154617,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22444,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"b393f431-cdb3-4c3f-805c-dd4ced121476","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.4581091} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"ee431a22-c4ee-4392-b922-a7807d73f2fa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.4595652} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? 200 20ms","method":"GET","requestID":"651bfce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? 200 19ms","method":"GET","requestID":"651c4b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Setting up experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully set up experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65276e90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.411547,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully running experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.67602,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5e03113-7bac-4213-b43e-5714bfa8839b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.530334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"c9e1e804-12c2-4b81-855f-42f9fb97fa23","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5336752} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.431629,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"65276e90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","rebac_allow":false,"scope_allow":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":"65276e90-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"4b327854-2155-43fe-9d35-436047de98e1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.535198} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65276e90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling 200 23ms","method":"POST","requestID":"65276e90-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? 200 27ms","method":"GET","requestID":"65272070-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bcd313b-5157-4e66-ba72-9a3567561808#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bcd313b-5157-4e66-ba72-9a3567561808","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d8eecbb6-36ff-4835-8591-40ce1fa67690","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5459034} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? 200 30ms","method":"GET","requestID":"6526d250-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0650cbc-f5eb-436e-8ecc-7f930e7bfe6e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5463088} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"652b8d40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"0ab02d89681bf14b6e851c83d79042c0","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"652bdb60-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6545d4c8-7881-4d8d-aeb5-fa3e2cf05525","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5541697} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.256488,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"652b8d40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"652b8d40-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2936700-5403-4d31-9b12-de7b6b1be040","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5559795} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.483008,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0ab02d89681bf14b6e851c83d79042c0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"652bdb60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"652bdb60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"0ab02d89681bf14b6e851c83d79042c0","responseTime":142,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"652b8d40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/signaling 200 12ms","method":"POST","requestID":"652b8d40-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"652bdb60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling 200 13ms","method":"POST","requestID":"652bdb60-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"299afe66256cdfd6cf9ae86632948723"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"299afe66256cdfd6cf9ae86632948723","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"652e2550-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"299afe66256cdfd6cf9ae86632948723"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.810215,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"299afe66256cdfd6cf9ae86632948723","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"299afe66256cdfd6cf9ae86632948723","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"727b3049-5f3a-4242-a8da-4e72ed3498e5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5693698} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.502795,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"652e2550-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"652e2550-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"4066314b-cbde-4f4b-9d15-4aae08c34fcb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5731726} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"652e2550-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/signaling 200 8ms","method":"POST","requestID":"652e2550-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"299afe66256cdfd6cf9ae86632948723","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"299afe66256cdfd6cf9ae86632948723"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"299afe66256cdfd6cf9ae86632948723"} device-1 | {"level":"info","message":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? 200 12ms","method":"GET","requestID":"299afe66256cdfd6cf9ae86632948723","responseTime":12,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.035098,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002769,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk","level":"info","message":"auth send jwt","requestID":"63d0a3826ab8f87d84136f4af09b113a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"63d0a3826ab8f87d84136f4af09b113a","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.759514104Z"}]},"request_id":"ef42ce38-cc5f-4cd7-8754-a875804424fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5841165} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63d0a3826ab8f87d84136f4af09b113a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"5286179e-0caf-4e89-97e7-a1f8748d90fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.5855055} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691744,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"63d0a3826ab8f87d84136f4af09b113a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"63d0a3826ab8f87d84136f4af09b113a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d47b6829-bb80-41a3-9150-13fc9868839e? 200 15ms","method":"GET","requestID":"652fd300-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? 200 14ms","method":"GET","requestID":"652ffa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:17:57.806667005Z"}]},"request_id":"167e407c-8d39-4c5f-be1d-f01ad9346155","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.592145} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Building connection plan","requestID":"0ab02d89681bf14b6e851c83d79042c0"} 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":"4e49c811-cab2-4dac-8e91-49431ebe55c9"},{"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":"2f4273cf-86bd-4f33-bda5-4272fdc87d5c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ba107157-ddb4-45a5-9b75-2bc6e617ee92"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0ab02d89681bf14b6e851c83d79042c0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"63d0a3826ab8f87d84136f4af09b113a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63d0a3826ab8f87d84136f4af09b113a"} gateway-1 | {"time_local":"10/Oct/2024:06:17:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"63d0a3826ab8f87d84136f4af09b113a"} device-1 | {"level":"info","message":"GET /devices/49492a60-43ac-42cf-9494-229146d7f217? 200 11ms","method":"GET","requestID":"63d0a3826ab8f87d84136f4af09b113a","responseTime":11,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.961404,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541078,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA3OH0.P8ju7OsVaQfgsYQ9XJjiAu7GijXWa2ifw0jD_bOsngk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c8c202d0-96c7-473d-99db-3447a05b12a5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.6054294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"001bbc1e-1719-40f3-a928-a80c7dc5d582","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.6056845} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494'","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494'","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} 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":"65329220-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"65329220-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0ab02d89681bf14b6e851c83d79042c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"653a3340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6be9878d-b3d1-47a3-b1b9-76892a0f4eda","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.6489284} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.332241,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"653a3340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"653a3340-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"653a3340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling 200 9ms","method":"POST","requestID":"653a3340-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"653be0f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27ccc581-0185-4fc4-aaee-200ac35eecc4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541078.659832} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.70732,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:17:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"653be0f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"653be0f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"653be0f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/signaling 200 9ms","method":"POST","requestID":"653be0f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/signaling"} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e8fe14704d805392c9a406e05c3ab52","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6e8fe14704d805392c9a406e05c3ab52","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"}}},"level":"info","message":"received a callback","requestID":"6e8fe14704d805392c9a406e05c3ab52"} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"6e8fe14704d805392c9a406e05c3ab52","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e8fe14704d805392c9a406e05c3ab52"} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","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/ca8068ed-48a0-465f-b76d-51fbc4e9c494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2eb7d395ec80cda1fd5d83f2ba61f25","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a2eb7d395ec80cda1fd5d83f2ba61f25","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"}}},"level":"info","message":"received a callback","requestID":"a2eb7d395ec80cda1fd5d83f2ba61f25"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"66785890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca8068ed-48a0-465f-b76d-51fbc4e9c494","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db124d4f-d7c4-4f60-940b-12a5f1854273","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.736792} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.265396,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"66785890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494","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":"66785890-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"66785890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494 200 13ms","method":"GET","requestID":"66785890-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"a2eb7d395ec80cda1fd5d83f2ba61f25","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2eb7d395ec80cda1fd5d83f2ba61f25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"667e9a20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e307388-39f7-431c-ad3f-bc8daedbc696","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.7769263} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.478527,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"667e9a20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"667e9a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"667e9a20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/signaling 200 13ms","method":"POST","requestID":"667e9a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66810b20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2107210-2231-4c12-9674-c66aea2a101e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.7922952} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.725296,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"66810b20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"66810b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66810b20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling 200 12ms","method":"POST","requestID":"66810b20-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MH0.2meh-pM-yAJYD3I0acCaMW-jJHkCcK-A-coL4G0Z33g","level":"info","message":"auth send jwt","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0bcd313b-5157-4e66-ba72-9a3567561808","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.354335,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541080,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MH0.2meh-pM-yAJYD3I0acCaMW-jJHkCcK-A-coL4G0Z33g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0bcd313b-5157-4e66-ba72-9a3567561808","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5"} gateway-1 | {"time_local":"10/Oct/2024:06:18:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0bcd313b-5157-4e66-ba72-9a3567561808 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5"} experiment-1 | {"level":"info","message":"GET /experiments/0bcd313b-5157-4e66-ba72-9a3567561808 200 14ms","method":"GET","requestID":"d3f8a6d2c8aeda60830ebcaa15a7a2a5","responseTime":14,"status":200,"url":"/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MH0.2meh-pM-yAJYD3I0acCaMW-jJHkCcK-A-coL4G0Z33g","level":"info","message":"auth send jwt","requestID":"a7d845a4e230bef6211342573cc79277"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a7d845a4e230bef6211342573cc79277","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0bcd313b-5157-4e66-ba72-9a3567561808","requestID":"a7d845a4e230bef6211342573cc79277"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.395099,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a7d845a4e230bef6211342573cc79277","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541080,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MH0.2meh-pM-yAJYD3I0acCaMW-jJHkCcK-A-coL4G0Z33g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7d845a4e230bef6211342573cc79277","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Attempting to finish experiment","requestID":"a7d845a4e230bef6211342573cc79277"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.223454,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541080,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MH0.2meh-pM-yAJYD3I0acCaMW-jJHkCcK-A-coL4G0Z33g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"49492a60-43ac-42cf-9494-229146d7f217","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d47b6829-bb80-41a3-9150-13fc9868839e","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca8068ed-48a0-465f-b76d-51fbc4e9c494': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca8068ed-48a0-465f-b76d-51fbc4e9c494","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"4d1af50d-994e-4727-8097-ef8a4a02f237","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.8851993} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1077a5dd-ddb2-474e-8398-3732b934c1e2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.8855338} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d934ee22bbba38d775f21d549bb6c0e4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d934ee22bbba38d775f21d549bb6c0e4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"}}},"level":"info","message":"received a callback","requestID":"d934ee22bbba38d775f21d549bb6c0e4"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6be77c566a8165a68080c34eca0dee3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e6be77c566a8165a68080c34eca0dee3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"}}},"level":"info","message":"received a callback","requestID":"e6be77c566a8165a68080c34eca0dee3"} device-1 | {"data":{"peerconnection":"ca8068ed-48a0-465f-b76d-51fbc4e9c494","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494 204 53ms","method":"DELETE","requestID":"668c55c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":53,"status":204,"url":"/peerconnections/ca8068ed-48a0-465f-b76d-51fbc4e9c494"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"},"level":"info","message":"Successfully finished experiment","requestID":"a7d845a4e230bef6211342573cc79277"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66977950-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49492a60-43ac-42cf-9494-229146d7f217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5915e6f2-9678-4c69-a47f-a6311a5bac24","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.9399595} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.234129,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"66977950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49492a60-43ac-42cf-9494-229146d7f217","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"66977950-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66977950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/49492a60-43ac-42cf-9494-229146d7f217/signaling 200 14ms","method":"POST","requestID":"66977950-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/49492a60-43ac-42cf-9494-229146d7f217/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bcd313b-5157-4e66-ba72-9a3567561808': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0bcd313b-5157-4e66-ba72-9a3567561808","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"e5ad04f9-e3e4-4a54-8177-58a4c0197b9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.9488797} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"758ef5f2-e6b4-4e31-be43-a357072739ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.9494212} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"669a1160-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a7d845a4e230bef6211342573cc79277","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd47b6829-bb80-41a3-9150-13fc9868839e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56c402d1-172b-469e-b3bc-ec5ca2dc7f5e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541080.956538} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.979282,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"669a1160-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d47b6829-bb80-41a3-9150-13fc9868839e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"669a1160-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"669a1160-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling 200 13ms","method":"POST","requestID":"669a1160-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/d47b6829-bb80-41a3-9150-13fc9868839e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0bcd313b-5157-4e66-ba72-9a3567561808","requestID":"a7d845a4e230bef6211342573cc79277"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0bcd313b-5157-4e66-ba72-9a3567561808 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7d845a4e230bef6211342573cc79277"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.673","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"451632c4538ae97925b34a9a3dd4c480"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.688","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b496ff40dc81a5c4c4d1a8ade1b5d946"} experiment-1 | {"level":"info","message":"DELETE /experiments/0bcd313b-5157-4e66-ba72-9a3567561808 204 171ms","method":"DELETE","requestID":"a7d845a4e230bef6211342573cc79277","responseTime":171,"status":204,"url":"/experiments/0bcd313b-5157-4e66-ba72-9a3567561808"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"d934ee22bbba38d775f21d549bb6c0e4","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"d934ee22bbba38d775f21d549bb6c0e4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"e6be77c566a8165a68080c34eca0dee3","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6be77c566a8165a68080c34eca0dee3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"b722dda37c8b1aabadfdba24168a8d9f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b722dda37c8b1aabadfdba24168a8d9f","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/d47b6829-bb80-41a3-9150-13fc9868839e' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"b722dda37c8b1aabadfdba24168a8d9f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.325032,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b722dda37c8b1aabadfdba24168a8d9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","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/49492a60-43ac-42cf-9494-229146d7f217' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8fc0478d-1dc6-4dca-8bcd-2d3afc07dc36","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0465696} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"156ec88c-4a5b-43a0-8ac4-5f8901b26faa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0525887} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"349f6abc-e47b-4788-811d-97d89e45c5a3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0635917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18844b36-e32a-4f40-a966-be28065ff3bb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0639205} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"cbb380b3-abd8-4f9d-ac41-85a460a1119a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0686615} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b722dda37c8b1aabadfdba24168a8d9f"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b722dda37c8b1aabadfdba24168a8d9f","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b722dda37c8b1aabadfdba24168a8d9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"b0b8d40bf89b3671689c0fae398e7305"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b0b8d40bf89b3671689c0fae398e7305","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b0b8d40bf89b3671689c0fae398e7305"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731576,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b0b8d40bf89b3671689c0fae398e7305","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b75f302f-85e6-448a-9e41-ef60254e29d3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0927477} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c6e0697-b449-4256-8250-4a31800c6a3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.0978951} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d6853240-1273-4616-88ad-b2ddd3a4d228","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.113191} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6e7e647-1003-43ad-8353-c7ba39598801","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.1134403} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"3d47d9a8-2a12-4ac6-a1a8-0961d083589f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.1175885} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b0b8d40bf89b3671689c0fae398e7305"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b0b8d40bf89b3671689c0fae398e7305","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0b8d40bf89b3671689c0fae398e7305"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"c23f8a0ad2ee391cced6f823b8addf1f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c23f8a0ad2ee391cced6f823b8addf1f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755319,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615761,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c23f8a0ad2ee391cced6f823b8addf1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"ad400a04-2465-43a4-b4d3-c4b719adabd3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.595833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"142085e9-7265-49f6-9434-4cfa71185394","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.5965924} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc473628-0eea-4612-8cda-ce0dfcd642ed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.6002882} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5c7e202-a5be-4f79-bf01-3831711847cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.601122} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"335df849-245f-4bf3-b51c-33135f3fdb8d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.6044452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c23f8a0ad2ee391cced6f823b8addf1f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c23f8a0ad2ee391cced6f823b8addf1f"} device-1 | {"level":"info","message":"PATCH /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628 200 19ms","method":"PATCH","requestID":"c23f8a0ad2ee391cced6f823b8addf1f","responseTime":19,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"a263fabb183d20781fad0cfc24f9398a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a263fabb183d20781fad0cfc24f9398a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a263fabb183d20781fad0cfc24f9398a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645722,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a263fabb183d20781fad0cfc24f9398a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a263fabb183d20781fad0cfc24f9398a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"f460a366-9274-4456-96bf-d597882f9c2d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.6158867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9"} device-1 | {"level":"info","message":"PATCH /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f 200 33ms","method":"PATCH","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9","responseTime":33,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8aa538bd0bb6a0f8b510c6b19ab447e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"8a160fb397f920760d07580df069fb50"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8a160fb397f920760d07580df069fb50","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8a160fb397f920760d07580df069fb50"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.809909,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8a160fb397f920760d07580df069fb50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8a160fb397f920760d07580df069fb50","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a263fabb183d20781fad0cfc24f9398a"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/websocket 200 20ms","method":"POST","requestID":"a263fabb183d20781fad0cfc24f9398a","responseTime":20,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a263fabb183d20781fad0cfc24f9398a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8a160fb397f920760d07580df069fb50"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/websocket 200 17ms","method":"POST","requestID":"8a160fb397f920760d07580df069fb50","responseTime":17,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8a160fb397f920760d07580df069fb50"} device-1 | {"level":"info","message":"device 'http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"e2c91457ca8c83ec59784b1e0c278cd4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2c91457ca8c83ec59784b1e0c278cd4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2c91457ca8c83ec59784b1e0c278cd4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082365,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e2c91457ca8c83ec59784b1e0c278cd4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e2c91457ca8c83ec59784b1e0c278cd4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"fb7eed4d-53e0-4ecb-9b67-e1fc875316e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.6778507} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2c91457ca8c83ec59784b1e0c278cd4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2c91457ca8c83ec59784b1e0c278cd4"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2c91457ca8c83ec59784b1e0c278cd4"} device-1 | {"level":"info","message":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? 200 15ms","method":"GET","requestID":"e2c91457ca8c83ec59784b1e0c278cd4","responseTime":15,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"7efa55c547a375eb259585c93e5336da"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7efa55c547a375eb259585c93e5336da","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7efa55c547a375eb259585c93e5336da"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655533,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7efa55c547a375eb259585c93e5336da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7efa55c547a375eb259585c93e5336da","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"630161c1-dfc3-4053-804e-3be22a881b04","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.69937} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7efa55c547a375eb259585c93e5336da","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7efa55c547a375eb259585c93e5336da"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7efa55c547a375eb259585c93e5336da"} device-1 | {"level":"info","message":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? 200 15ms","method":"GET","requestID":"7efa55c547a375eb259585c93e5336da","responseTime":15,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f540f0231fb161ff2ac92a8d5b9f7929","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.262659,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f540f0231fb161ff2ac92a8d5b9f7929","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f540f0231fb161ff2ac92a8d5b9f7929","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to run experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to book experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully booked experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161601,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978764,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"d595ea58-c719-4ad9-96de-d19d8f30eb75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.7628994} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"65f0e9a0-98b7-4b16-b702-1acf68c1f7df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.7639306} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? 200 18ms","method":"GET","requestID":"67144a70-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? 200 18ms","method":"GET","requestID":"67149890-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Setting up experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully set up experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"671f46f0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully running experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.921178,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845132,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"81e2b63a-47f7-4880-bfe8-b5c5fa6297fe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.830305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"0f163099-781e-4799-85c6-cd94d7448762","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8309736} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43898","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf63fa21-7a76-49da-9109-7e89cc962a0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8347163} authorization-1 | {"client_addr":"127.0.0.1:43898","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.925235,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"671f46f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","rebac_allow":false,"scope_allow":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":"671f46f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? 200 21ms","method":"GET","requestID":"671ed1c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? 200 20ms","method":"GET","requestID":"671f1fe0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"671f46f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling 200 20ms","method":"POST","requestID":"671f46f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"67227b40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7fcac522-5fcb-4007-9db4-b94ca36e6f8f#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7fcac522-5fcb-4007-9db4-b94ca36e6f8f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a478ad46-8f8e-41b0-8af3-7920a9968224","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.844278} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1fe6478-e21a-4293-bfb9-ed9f6d53e518","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8446174} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6722a250-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f540f0231fb161ff2ac92a8d5b9f7929","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78ee49b9-a29a-4826-8aaf-66638ab6a40a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.849739} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.773996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67227b40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"67227b40-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e31b8f0-521e-4243-b48e-689eaf36c5f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.851044} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799643,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6722a250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","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/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6722a250-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"f540f0231fb161ff2ac92a8d5b9f7929","responseTime":142,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"67227b40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling 200 11ms","method":"POST","requestID":"67227b40-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6722a250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling 200 11ms","method":"POST","requestID":"6722a250-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"c4e6ec67785649afaa4eb9add51ca128"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"67247710-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4e6ec67785649afaa4eb9add51ca128","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4e6ec67785649afaa4eb9add51ca128"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641635,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.609892,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c4e6ec67785649afaa4eb9add51ca128","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4e6ec67785649afaa4eb9add51ca128","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9897988e-76a2-46ab-96b0-377814733f62","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8620353} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67247710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"67247710-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"7ca065fa-01a3-42c0-b090-187a96a957e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8677769} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"67247710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling 200 11ms","method":"POST","requestID":"67247710-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c4e6ec67785649afaa4eb9add51ca128","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4e6ec67785649afaa4eb9add51ca128"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4e6ec67785649afaa4eb9add51ca128"} device-1 | {"level":"info","message":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? 200 13ms","method":"GET","requestID":"c4e6ec67785649afaa4eb9add51ca128","responseTime":13,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721631,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:47950","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60176,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc","level":"info","message":"auth send jwt","requestID":"91304b7cead395d69e5ca4001ae80706"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91304b7cead395d69e5ca4001ae80706","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.063556188Z"}]},"request_id":"832a690f-785e-43c2-b029-e0fa8900c3ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8772373} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91304b7cead395d69e5ca4001ae80706"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"be316875-672f-4c57-aa2a-776d202a8192","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8781128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920778,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"91304b7cead395d69e5ca4001ae80706","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"91304b7cead395d69e5ca4001ae80706","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628? 200 14ms","method":"GET","requestID":"672672e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? 200 14ms","method":"GET","requestID":"672699f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:01.113142903Z"}]},"request_id":"e22d135c-a1fe-42d9-b2d6-baa1bf7d6e86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8858175} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Building connection plan","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} 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":"c289941d-0571-471e-aa1e-47757cf1a1e5"},{"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":"d3a5a91c-067b-4156-821a-f5c6a69de453"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"52748588-4003-42e9-b4fd-9913811c7a75"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"91304b7cead395d69e5ca4001ae80706","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91304b7cead395d69e5ca4001ae80706"} device-1 | {"level":"info","message":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? 200 13ms","method":"GET","requestID":"91304b7cead395d69e5ca4001ae80706","responseTime":13,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91304b7cead395d69e5ca4001ae80706"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.79077,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541081,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4MX0.3ZG5ohjQB2PV8llKeaGWh1fippTCkyvDSstx8SZKjXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a3380214-c8ce-4818-bffd-134544879b71","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8975315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96cc129a-6cc7-4416-a439-9e199acc526c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.8977106} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67'","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67'","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 21ms","method":"POST","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"67293200-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f540f0231fb161ff2ac92a8d5b9f7929"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"673036e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a541ed38-8869-4f99-b060-e06a4d5644ee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.9387617} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.534233,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"673036e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"673036e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"673036e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling 200 8ms","method":"POST","requestID":"673036e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6731bd80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e728415d-cf8b-43e3-91fc-d7e22897870c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541081.9482417} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.320044,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6731bd80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6731bd80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6731bd80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling 200 7ms","method":"POST","requestID":"6731bd80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling"} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f7064e20de17837baf46da27816ff7b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2f7064e20de17837baf46da27816ff7b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"}}},"level":"info","message":"received a callback","requestID":"2f7064e20de17837baf46da27816ff7b"} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"2f7064e20de17837baf46da27816ff7b","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"2f7064e20de17837baf46da27816ff7b"} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","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/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1cca11ab05fc962bfc85fe39dbd23f2e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1cca11ab05fc962bfc85fe39dbd23f2e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"}}},"level":"info","message":"received a callback","requestID":"1cca11ab05fc962bfc85fe39dbd23f2e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"686e8340-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"695c9cc1-b2c4-41ac-afcd-7fcd4f9fc6c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.0285933} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.846106,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"686e8340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","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":"686e8340-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"686e8340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67 200 14ms","method":"GET","requestID":"686e8340-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"1cca11ab05fc962bfc85fe39dbd23f2e","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"1cca11ab05fc962bfc85fe39dbd23f2e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68749dc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e3ad436-b8d3-4dfd-90bf-8543f0146d86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.0672126} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.975081,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"68749dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","rebac_allow":false,"scope_allow":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":"68749dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68749dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling 200 13ms","method":"POST","requestID":"68749dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68770ec0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c896c0c5-fff5-4ca1-8d87-592690ecd585","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.083137} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.021096,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"68770ec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"68770ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68770ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling 200 13ms","method":"POST","requestID":"68770ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U","level":"info","message":"auth send jwt","requestID":"f34f9fcb23dbc735af20266128ceb4ca"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f34f9fcb23dbc735af20266128ceb4ca","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","requestID":"f34f9fcb23dbc735af20266128ceb4ca"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.265034,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f34f9fcb23dbc735af20266128ceb4ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541084,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f34f9fcb23dbc735af20266128ceb4ca","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","requestID":"f34f9fcb23dbc735af20266128ceb4ca"} experiment-1 | {"level":"info","message":"GET /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f 200 15ms","method":"GET","requestID":"f34f9fcb23dbc735af20266128ceb4ca","responseTime":15,"status":200,"url":"/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f34f9fcb23dbc735af20266128ceb4ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U","level":"info","message":"auth send jwt","requestID":"35246d538e83e2d63108cd736e988a6b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"35246d538e83e2d63108cd736e988a6b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","requestID":"35246d538e83e2d63108cd736e988a6b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.174966,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"35246d538e83e2d63108cd736e988a6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541084,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35246d538e83e2d63108cd736e988a6b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Attempting to finish experiment","requestID":"35246d538e83e2d63108cd736e988a6b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.286862,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541084,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d4135ce3-f51d-4431-8a38-8f5515eba70f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"31345785-41a3-4a84-a8b5-6ce7ccec4628","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F028c3ecd-ced7-4e97-a6c1-da4b7d52ed67': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F028c3ecd-ced7-4e97-a6c1-da4b7d52ed67","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d0bda57a-880b-4eba-bc65-610b9eb54cd4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.178192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41a01b97-3961-49dc-b960-7e3bbf480434","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.1787257} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe0967741e5a86f1e93162293a54215d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fe0967741e5a86f1e93162293a54215d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"}}},"level":"info","message":"received a callback","requestID":"fe0967741e5a86f1e93162293a54215d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91e64fa84b067f3a23255968bc8913b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"91e64fa84b067f3a23255968bc8913b2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"}}},"level":"info","message":"received a callback","requestID":"91e64fa84b067f3a23255968bc8913b2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67 204 39ms","method":"DELETE","requestID":"68831cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":39,"status":204,"url":"/peerconnections/028c3ecd-ced7-4e97-a6c1-da4b7d52ed67"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"},"level":"info","message":"Successfully finished experiment","requestID":"35246d538e83e2d63108cd736e988a6b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"688c9290-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4135ce3-f51d-4431-8a38-8f5515eba70f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9b1708f-6e99-409b-85b6-e0e168cabab0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.2239914} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.970465,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"688c9290-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f","object_type":"device","rebac_allow":false,"scope_allow":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":"688c9290-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"688c9290-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling 200 15ms","method":"POST","requestID":"688c9290-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/d4135ce3-f51d-4431-8a38-8f5515eba70f/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7fcac522-5fcb-4007-9db4-b94ca36e6f8f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7fcac522-5fcb-4007-9db4-b94ca36e6f8f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"3c036e3a-bcc4-4e3b-b528-7c5c32705e75","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.2322571} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e20878e-5ed5-4201-90f3-e92122327b39","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.2335303} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"35246d538e83e2d63108cd736e988a6b","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"688fc6e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F31345785-41a3-4a84-a8b5-6ce7ccec4628","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91149eee-2ced-42a4-b3a7-8a70d2cae4b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.2456455} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.354583,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"688fc6e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628","object_type":"device","rebac_allow":false,"scope_allow":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":"688fc6e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"688fc6e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling 200 15ms","method":"POST","requestID":"688fc6e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/31345785-41a3-4a84-a8b5-6ce7ccec4628/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f","requestID":"35246d538e83e2d63108cd736e988a6b"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f 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":"35246d538e83e2d63108cd736e988a6b"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.669","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0cd9d3c863a790e567e8cfad95ddb57d"} experiment-1 | {"level":"info","message":"DELETE /experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f 204 162ms","method":"DELETE","requestID":"35246d538e83e2d63108cd736e988a6b","responseTime":162,"status":204,"url":"/experiments/7fcac522-5fcb-4007-9db4-b94ca36e6f8f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.659","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2b12f0fd9aa54ddae89ed46c0d36ef5f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"fe0967741e5a86f1e93162293a54215d","responseTime":121,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"91e64fa84b067f3a23255968bc8913b2","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"91e64fa84b067f3a23255968bc8913b2"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"fe0967741e5a86f1e93162293a54215d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U","level":"info","message":"auth send jwt","requestID":"76a56075103da8c8f55d63b15f5fec51"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"76a56075103da8c8f55d63b15f5fec51","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/d4135ce3-f51d-4431-8a38-8f5515eba70f' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"76a56075103da8c8f55d63b15f5fec51"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.081288,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76a56075103da8c8f55d63b15f5fec51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541084,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","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/31345785-41a3-4a84-a8b5-6ce7ccec4628' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"16d1691c-6587-4233-9acf-a2eca8d73fc1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3321211} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a56d082c-28b9-467d-b09a-a01d7337e0b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3375232} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f2e7faa4-e069-4bb4-b960-af1161c0d5ea","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3489199} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"957b2b1e-1341-47b7-9b63-fd4b406f910d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3491607} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"0560ccd9-14b8-4014-aee5-5fe31f52e860","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3540397} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"76a56075103da8c8f55d63b15f5fec51"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76a56075103da8c8f55d63b15f5fec51"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"76a56075103da8c8f55d63b15f5fec51","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U","level":"info","message":"auth send jwt","requestID":"5beb19eec6fd344c80f923058eec3d00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5beb19eec6fd344c80f923058eec3d00"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.545513,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5beb19eec6fd344c80f923058eec3d00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541084,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4NH0.L_bUVAezoFT7VJGp6O_e2fm1oq564HulAu1dqMcH82U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7134e7e7-7914-4795-96bc-20b51e986e37","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3805203} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93a6c48a-e1c3-4011-b1ce-d96bc1d7c2e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.3849368} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"08355c28-a2d7-44b0-95ab-adec940a140d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.4006476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce912bce-8496-4ce5-94dc-7912a9cdadde","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.4009333} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"1e6f72db-b6d8-49fc-b189-9b7026e5ce39","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541084.4052248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5beb19eec6fd344c80f923058eec3d00"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"5beb19eec6fd344c80f923058eec3d00","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5beb19eec6fd344c80f923058eec3d00"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eec19a36f5c10cea8a51378e46566b32","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eec19a36f5c10cea8a51378e46566b32","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c3ba64a97854d9abff0b277da095b22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/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":"eec19a36f5c10cea8a51378e46566b32"} device-1 | {"level":"info","message":"OPTIONS /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/websocket 200 1ms","method":"OPTIONS","requestID":"eec19a36f5c10cea8a51378e46566b32","responseTime":1,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c3ba64a97854d9abff0b277da095b22","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6af8798d-0775-4839-9bb3-447da883ac7d/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":"3c3ba64a97854d9abff0b277da095b22"} device-1 | {"level":"info","message":"OPTIONS /devices/6af8798d-0775-4839-9bb3-447da883ac7d/websocket 200 1ms","method":"OPTIONS","requestID":"3c3ba64a97854d9abff0b277da095b22","responseTime":1,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"cb542964d1d353c2c781e5f93acb329a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb542964d1d353c2c781e5f93acb329a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cb542964d1d353c2c781e5f93acb329a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696173,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.430701,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cb542964d1d353c2c781e5f93acb329a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cb542964d1d353c2c781e5f93acb329a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/websocket 200 23ms","method":"POST","requestID":"9ba01d29bea7f9dffb752bdcadfd1aa2","responseTime":23,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/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":"9ba01d29bea7f9dffb752bdcadfd1aa2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cb542964d1d353c2c781e5f93acb329a"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cb542964d1d353c2c781e5f93acb329a"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/websocket 200 28ms","method":"POST","requestID":"cb542964d1d353c2c781e5f93acb329a","responseTime":28,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef0fbe3c30afdb2159fbdd22d7cc8214","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef0fbe3c30afdb2159fbdd22d7cc8214","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ef0fbe3c30afdb2159fbdd22d7cc8214"} device-1 | {"level":"info","message":"OPTIONS /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 0ms","method":"OPTIONS","requestID":"ef0fbe3c30afdb2159fbdd22d7cc8214","responseTime":0,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"477e9bdef7c54991c0b85d0bf42e3033","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"477e9bdef7c54991c0b85d0bf42e3033","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6af8798d-0775-4839-9bb3-447da883ac7d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"477e9bdef7c54991c0b85d0bf42e3033"} device-1 | {"level":"info","message":"OPTIONS /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 1ms","method":"OPTIONS","requestID":"477e9bdef7c54991c0b85d0bf42e3033","responseTime":1,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"34603a2380727a1087a313c512eed688"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"34603a2380727a1087a313c512eed688","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"34603a2380727a1087a313c512eed688"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"4ab3c8257875ff51f3748858667b3cd8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4ab3c8257875ff51f3748858667b3cd8","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841975,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"34603a2380727a1087a313c512eed688","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34603a2380727a1087a313c512eed688","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4ab3c8257875ff51f3748858667b3cd8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706359,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4ab3c8257875ff51f3748858667b3cd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ab3c8257875ff51f3748858667b3cd8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"55c1c782-dc31-489f-b4cb-766157352cae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.485263} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34603a2380727a1087a313c512eed688","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"d5c2bc96-b2ec-4fcd-b432-7cded61025b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.4884353} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ab3c8257875ff51f3748858667b3cd8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"957be7e4-e723-4715-8ea9-0e6b48a1cfbb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.4912698} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"34603a2380727a1087a313c512eed688","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dee5a16b-5252-4c34-9eec-f07f5eec4f52","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.4936595} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4ab3c8257875ff51f3748858667b3cd8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"de568dbe-cf7d-4e8d-985d-ea90c29de383","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.5082827} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ab3c8257875ff51f3748858667b3cd8","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"0b002196-fb72-45d5-9842-b923ebaea7b7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.5091176} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4ab3c8257875ff51f3748858667b3cd8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34603a2380727a1087a313c512eed688","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6af8798d-0775-4839-9bb3-447da883ac7d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4ab3c8257875ff51f3748858667b3cd8"} device-1 | {"level":"info","message":"PATCH /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 32ms","method":"PATCH","requestID":"4ab3c8257875ff51f3748858667b3cd8","responseTime":32,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"34603a2380727a1087a313c512eed688"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34603a2380727a1087a313c512eed688"} device-1 | {"level":"info","message":"PATCH /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 38ms","method":"PATCH","requestID":"34603a2380727a1087a313c512eed688","responseTime":38,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"ec9ea22f96137610b97fc5485eaf0e7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ec9ea22f96137610b97fc5485eaf0e7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec9ea22f96137610b97fc5485eaf0e7d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.860783,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ec9ea22f96137610b97fc5485eaf0e7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec9ea22f96137610b97fc5485eaf0e7d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"61a676e4-0eac-4509-aa14-9b8e47e9d831","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.5299747} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ec9ea22f96137610b97fc5485eaf0e7d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec9ea22f96137610b97fc5485eaf0e7d"} device-1 | {"level":"info","message":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 12ms","method":"GET","requestID":"ec9ea22f96137610b97fc5485eaf0e7d","responseTime":12,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec9ea22f96137610b97fc5485eaf0e7d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"c0f75c626867628858df3048479988e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c0f75c626867628858df3048479988e2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0f75c626867628858df3048479988e2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c0f75c626867628858df3048479988e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0f75c626867628858df3048479988e2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"0a8b6a54-0abc-4d3e-b819-f9f6fbcf63bf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.5484886} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c0f75c626867628858df3048479988e2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0f75c626867628858df3048479988e2"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0f75c626867628858df3048479988e2"} device-1 | {"level":"info","message":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 10ms","method":"GET","requestID":"c0f75c626867628858df3048479988e2","responseTime":10,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"be9da7db5420b927f7b09ac86b4703a9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"be9da7db5420b927f7b09ac86b4703a9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"be9da7db5420b927f7b09ac86b4703a9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.298488,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"be9da7db5420b927f7b09ac86b4703a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be9da7db5420b927f7b09ac86b4703a9","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to run experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to book experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully booked experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739661,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.796334,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"38fcabc1-ac2d-4a76-8f8c-f1cd0458e823","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.601941} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"e9bc2bae-57d3-4844-840d-0c6a35b116dd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6034667} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 17ms","method":"GET","requestID":"69f71f10-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 17ms","method":"GET","requestID":"69f74620-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Setting up experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully locked booking for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to update booking for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully updated booking for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully set up experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully running experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a015840-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272393,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890079,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"c9c815f9-d24a-4254-9bbd-a5069cfa29e2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6703508} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78726a26-e21e-43f4-9eff-c4b324c89383","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6704237} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"83706ea1-a188-4805-b927-34c3a9ebdf2e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6718037} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.653252,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a015840-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","rebac_allow":false,"scope_allow":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":"6a015840-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a015840-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling 200 18ms","method":"POST","requestID":"6a015840-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 24ms","method":"GET","requestID":"6a0094f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 23ms","method":"GET","requestID":"6a00e310-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a046580-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a143cbc-b55a-4c44-80fb-f198e40cebab#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a143cbc-b55a-4c44-80fb-f198e40cebab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"727d743f-b7a4-40ea-ab3e-91a51ba1ce85","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6809704} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f1f08d7-8a44-430a-9e42-b5b2ed4ade96","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6813223} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a04b3a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"be9da7db5420b927f7b09ac86b4703a9","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"772db8b7-fe67-4b09-b5b3-4e188ed86dd1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.686254} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.590701,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a046580-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6a046580-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a695ba65-af56-4f74-b55e-b96213349f0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6883938} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.698942,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a04b3a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a04b3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"be9da7db5420b927f7b09ac86b4703a9"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be9da7db5420b927f7b09ac86b4703a9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"be9da7db5420b927f7b09ac86b4703a9","responseTime":136,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a046580-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling 200 11ms","method":"POST","requestID":"6a046580-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a04b3a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling 200 11ms","method":"POST","requestID":"6a04b3a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"2d1875bd47541ebf329f5f685eb150af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a06af70-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2d1875bd47541ebf329f5f685eb150af","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d1875bd47541ebf329f5f685eb150af"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670563,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2b893101-07ab-4670-8f73-6a5b3ad7a5f2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.6992042} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d1875bd47541ebf329f5f685eb150af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2d1875bd47541ebf329f5f685eb150af","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.098934,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a06af70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a06af70-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"655d87f9-a547-44cd-876a-c1576ae147a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.7033808} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a06af70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling 200 9ms","method":"POST","requestID":"6a06af70-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d1875bd47541ebf329f5f685eb150af","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d1875bd47541ebf329f5f685eb150af"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d1875bd47541ebf329f5f685eb150af"} device-1 | {"level":"info","message":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 13ms","method":"GET","requestID":"2d1875bd47541ebf329f5f685eb150af","responseTime":13,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774015,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866294,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.348870729Z"}]},"request_id":"64631fe4-dc44-4397-a7d7-980828b74576","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.7145252} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"00c8ac34-bb83-4f99-95af-91ccfa461f2e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.715606} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945913,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} device-1 | {"level":"info","message":"GET /devices/6af8798d-0775-4839-9bb3-447da883ac7d? 200 13ms","method":"GET","requestID":"6a083610-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3a62ce5ee96f164df1b4c8a215f93fd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 14ms","method":"GET","requestID":"6a088430-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:04.400606979Z"}]},"request_id":"6b810198-1d2d-4b45-9244-ce93c7835d62","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.722257} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Building connection plan","requestID":"be9da7db5420b927f7b09ac86b4703a9"} 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":"033ebf56-eb98-49e6-aeab-363a155c3a35"},{"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":"88e79185-e5bb-4f98-a47f-f2fefb444ea1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d2f02bb2-722a-49f3-8c7f-4fad88f9f3cd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"be9da7db5420b927f7b09ac86b4703a9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6a0b1c40-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6a0b1c40-86cf-11ef-a631-87f051e9b6e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"6a0b1c40-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? 200 11ms","method":"GET","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8","responseTime":11,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a62ce5ee96f164df1b4c8a215f93fd8"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777?id=8d3f41cf-2947-4e6c-b5ca-0e54bd63bcd2","ws://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777?id=46afdb3d-bff9-4038-9772-6bed67b93b5b"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.785268,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e861a6ba-6993-4133-a33d-e19df5285e79","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.738108} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa64ed2b-736e-4555-ae3f-bfc61a83cbb9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.7383604} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4'","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4'","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6a0b9170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6a109a80-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\"","requestID":"6a109a80-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6a109a80-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6a10c190-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8d3f41cf-2947-4e6c-b5ca-0e54bd63bcd2\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\"","requestID":"6a10c190-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6a10c190-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8704baf335d90a8214dd71c2f2bf20c6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8704baf335d90a8214dd71c2f2bf20c6","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"}}},"level":"info","message":"received a callback","requestID":"8704baf335d90a8214dd71c2f2bf20c6"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"8704baf335d90a8214dd71c2f2bf20c6","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"8704baf335d90a8214dd71c2f2bf20c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"be9da7db5420b927f7b09ac86b4703a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a150750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad0c37c7-23d5-41b8-b544-c957fdee9466","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.7932127} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799768,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a150750-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a150750-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a150750-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling 200 14ms","method":"POST","requestID":"6a150750-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be7f6936bffc5c98bd318070bb4c18fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"be7f6936bffc5c98bd318070bb4c18fa","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a177850-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"}}},"level":"info","message":"received a callback","requestID":"be7f6936bffc5c98bd318070bb4c18fa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23ff2bfd-de2c-4653-8a9e-937ec05796f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.8091328} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.653891,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6a183ba0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a177850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a177850-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a177850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling 200 8ms","method":"POST","requestID":"6a177850-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36cf3012-5eda-4b0b-b289-889c971df3d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7cb4c8a3-32cf-4414-a6a2-cf15e0b24b01","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.814186} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.384076,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a183ba0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","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":"6a183ba0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6a183ba0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4 200 7ms","method":"GET","requestID":"6a183ba0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"be7f6936bffc5c98bd318070bb4c18fa","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"be7f6936bffc5c98bd318070bb4c18fa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a1b6ff0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"940992ed-9a46-42b0-a4d4-c4e072968055","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.8353736} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.316031,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a1b6ff0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a1b6ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a1b6ff0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling 200 7ms","method":"POST","requestID":"6a1b6ff0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a1ccf80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd8e76d8-43fe-4bb8-8c81-f36abe800d8e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.84436} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.151189,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a1ccf80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a1ccf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a1ccf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling 200 8ms","method":"POST","requestID":"6a1ccf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.80367,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0"} experiment-1 | {"level":"info","message":"GET /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab 200 13ms","method":"GET","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0","responseTime":13,"status":200,"url":"/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bf051f1d5383fcf5c5c1bcc638d0ad0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0","level":"info","message":"auth send jwt","requestID":"42995aa6704e3f93d28f6f8802fed69a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"42995aa6704e3f93d28f6f8802fed69a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","requestID":"42995aa6704e3f93d28f6f8802fed69a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.096893,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"42995aa6704e3f93d28f6f8802fed69a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"42995aa6704e3f93d28f6f8802fed69a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Attempting to finish experiment","requestID":"42995aa6704e3f93d28f6f8802fed69a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.129502,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541086,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4Nn0.Uy1i2X0oGZaxxJzxSE4K7IJiUOCA-uRAoqfVd7kA9s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","device":"6af8798d-0775-4839-9bb3-447da883ac7d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d61fe0bd-678d-487d-8cc5-bdee09552777?id=8d3f41cf-2947-4e6c-b5ca-0e54bd63bcd2 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.163","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c12ef7b301013730a3bc268b6860f8ba"} gateway-1 | {"time_local":"10/Oct/2024:06:18:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d61fe0bd-678d-487d-8cc5-bdee09552777?id=46afdb3d-bff9-4038-9772-6bed67b93b5b HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.164","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40dce3694a586b3ac618207617360ba5"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8d3f41cf-2947-4e6c-b5ca-0e54bd63bcd2\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4","device":"3176cc02-0520-4bb7-afdd-47ca8dad2338","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8d3f41cf-2947-4e6c-b5ca-0e54bd63bcd2\" from room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" in room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"46afdb3d-bff9-4038-9772-6bed67b93b5b\" from room \"http://localhost/rooms/d61fe0bd-678d-487d-8cc5-bdee09552777\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36cf3012-5eda-4b0b-b289-889c971df3d4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36cf3012-5eda-4b0b-b289-889c971df3d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"9de80eba-cb05-41b4-aa9b-95ed8593124c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.9284637} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d64ff23-c073-4c36-899c-84d3851d798a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.928814} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"95d9ebee4e9605cdeeb7298be17b1bf0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"95d9ebee4e9605cdeeb7298be17b1bf0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b05d2228c1d9459eb13b0a27e4c49792","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b05d2228c1d9459eb13b0a27e4c49792","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"}}},"level":"info","message":"received a callback","requestID":"95d9ebee4e9605cdeeb7298be17b1bf0"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"}}},"level":"info","message":"received a callback","requestID":"b05d2228c1d9459eb13b0a27e4c49792"} device-1 | {"data":{"peerconnection":"36cf3012-5eda-4b0b-b289-889c971df3d4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4 204 45ms","method":"DELETE","requestID":"6a272fc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":45,"status":204,"url":"/peerconnections/36cf3012-5eda-4b0b-b289-889c971df3d4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"},"level":"info","message":"Successfully finished experiment","requestID":"42995aa6704e3f93d28f6f8802fed69a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a3141e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6af8798d-0775-4839-9bb3-447da883ac7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56a91526-6099-4478-abe9-37228eadf8b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.9808493} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.873265,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a3141e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6af8798d-0775-4839-9bb3-447da883ac7d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6a3141e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3141e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling 200 13ms","method":"POST","requestID":"6a3141e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/6af8798d-0775-4839-9bb3-447da883ac7d/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a143cbc-b55a-4c44-80fb-f198e40cebab': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1a143cbc-b55a-4c44-80fb-f198e40cebab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"7706e92c-4c09-48b4-a3f8-38036b4b99d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.9882069} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b11fc76-3386-4d9b-abf4-cb8b6a6173fa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.9887621} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"42995aa6704e3f93d28f6f8802fed69a","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a33d9f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3176cc02-0520-4bb7-afdd-47ca8dad2338","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf8ff854-6f0b-451e-b58e-c68e9f52cbbf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541086.9980874} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.921996,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6a33d9f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6a33d9f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a33d9f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling 200 13ms","method":"POST","requestID":"6a33d9f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab","requestID":"42995aa6704e3f93d28f6f8802fed69a"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab 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":"42995aa6704e3f93d28f6f8802fed69a"} experiment-1 | {"level":"info","message":"DELETE /experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab 204 178ms","method":"DELETE","requestID":"42995aa6704e3f93d28f6f8802fed69a","responseTime":178,"status":204,"url":"/experiments/1a143cbc-b55a-4c44-80fb-f198e40cebab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"95d9ebee4e9605cdeeb7298be17b1bf0","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"95d9ebee4e9605cdeeb7298be17b1bf0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"b05d2228c1d9459eb13b0a27e4c49792","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"b05d2228c1d9459eb13b0a27e4c49792"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4N30.oiW086dLPJQdW7GxJ5s0PVFO1vlCghH0gjIxJAW659M","level":"info","message":"auth send jwt","requestID":"7801c5f7b36bfb708371fa6e52eaeb55"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7801c5f7b36bfb708371fa6e52eaeb55"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.643","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e7bf6c7d1669f8f829693f4e373d583c"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.650","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e0d90fc556714b04bbbccea2a4b3deb0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.001285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7801c5f7b36bfb708371fa6e52eaeb55","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541087,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4N30.oiW086dLPJQdW7GxJ5s0PVFO1vlCghH0gjIxJAW659M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","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/6af8798d-0775-4839-9bb3-447da883ac7d' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3176cc02-0520-4bb7-afdd-47ca8dad2338' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"da0d6558-bd29-42a9-8f4a-ed38d238351e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1029642} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93d83dbc-00f9-4381-9ab4-7f9077dfb364","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1073484} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"afe0c2b4-abec-423b-a24a-c3014704a80f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1164045} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70c5957a-14f6-43cc-bdce-c238b6cec055","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.116564} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"76b1e407-d4d2-444b-971c-4bf0947f7c1d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1207263} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7801c5f7b36bfb708371fa6e52eaeb55"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7801c5f7b36bfb708371fa6e52eaeb55"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"7801c5f7b36bfb708371fa6e52eaeb55","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4N30.oiW086dLPJQdW7GxJ5s0PVFO1vlCghH0gjIxJAW659M","level":"info","message":"auth send jwt","requestID":"3cc86accb509fd82331e77f1b4a128a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3cc86accb509fd82331e77f1b4a128a1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.98042,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3cc86accb509fd82331e77f1b4a128a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541087,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4N30.oiW086dLPJQdW7GxJ5s0PVFO1vlCghH0gjIxJAW659M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5f512ace-1aea-4820-8018-4ecc683f5d6c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1492472} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"966017bb-bbff-48a1-a3c6-4bdb4d4ff9fc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1536899} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"82cb3889-530b-4037-8e76-8598515aab4f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1644135} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d0617ea-9425-404c-8f27-9d06405b2080","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.1648402} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"b91cf109-1f14-4d13-8f72-60642cbc509c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541087.168434} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3cc86accb509fd82331e77f1b4a128a1"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"3cc86accb509fd82331e77f1b4a128a1","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cc86accb509fd82331e77f1b4a128a1"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"128772acb4a27a17f30d6d058ae602ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"128772acb4a27a17f30d6d058ae602ae","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/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":"128772acb4a27a17f30d6d058ae602ae"} device-1 | {"level":"info","message":"OPTIONS /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/websocket 200 1ms","method":"OPTIONS","requestID":"128772acb4a27a17f30d6d058ae602ae","responseTime":1,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.856982,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9ccc4f68b5644ed0552b4c736aeac2fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9623fc4072baf1bd5efd9a3ad0d78a85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9623fc4072baf1bd5efd9a3ad0d78a85","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/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":"9623fc4072baf1bd5efd9a3ad0d78a85"} device-1 | {"level":"info","message":"OPTIONS /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/websocket 200 0ms","method":"OPTIONS","requestID":"9623fc4072baf1bd5efd9a3ad0d78a85","responseTime":0,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"45c6606e2ab4d78b3b5d1c25896ab309"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/websocket 200 22ms","method":"POST","requestID":"9ccc4f68b5644ed0552b4c736aeac2fa","responseTime":22,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/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":"9ccc4f68b5644ed0552b4c736aeac2fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45c6606e2ab4d78b3b5d1c25896ab309","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"45c6606e2ab4d78b3b5d1c25896ab309"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.838038,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"45c6606e2ab4d78b3b5d1c25896ab309","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45c6606e2ab4d78b3b5d1c25896ab309","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"45c6606e2ab4d78b3b5d1c25896ab309"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/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":"45c6606e2ab4d78b3b5d1c25896ab309"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/websocket 200 24ms","method":"POST","requestID":"45c6606e2ab4d78b3b5d1c25896ab309","responseTime":24,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1aa3ad6c22e967eee37c25d653972340","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"device 'http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581' connected"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1aa3ad6c22e967eee37c25d653972340","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1aa3ad6c22e967eee37c25d653972340"} device-1 | {"level":"info","message":"OPTIONS /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 1ms","method":"OPTIONS","requestID":"1aa3ad6c22e967eee37c25d653972340","responseTime":1,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"b5a07bbb6db3539ca546e70597d2a2ab"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b5a07bbb6db3539ca546e70597d2a2ab"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023982,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b5a07bbb6db3539ca546e70597d2a2ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ab1a28a88b09578d2c893f0dce38d965","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ab1a28a88b09578d2c893f0dce38d965","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ab1a28a88b09578d2c893f0dce38d965"} device-1 | {"level":"info","message":"OPTIONS /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 1ms","method":"OPTIONS","requestID":"ab1a28a88b09578d2c893f0dce38d965","responseTime":1,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"fd8ca61d-2e8e-4d86-b0dc-b656c2127894","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.2679734} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"0f608c5c59f661f477637482de52c9a9"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"0f608c5c59f661f477637482de52c9a9","responseTime":9,"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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfb7cf93-d530-4533-9df2-9be9d5bcb25b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.2750947} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0f608c5c59f661f477637482de52c9a9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.560612,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0f608c5c59f661f477637482de52c9a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f608c5c59f661f477637482de52c9a9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"fd04e8e5-6075-46ed-a076-e1fbd4f0b27e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.2841752} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b5a07bbb6db3539ca546e70597d2a2ab"} device-1 | {"level":"info","message":"PATCH /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 35ms","method":"PATCH","requestID":"b5a07bbb6db3539ca546e70597d2a2ab","responseTime":35,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b5a07bbb6db3539ca546e70597d2a2ab"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"5fab44ed-644d-4b33-9ee4-54f6d4edbba7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.292864} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f608c5c59f661f477637482de52c9a9","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d0e19cd-5d97-4766-88ee-c9b3510befeb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.2983348} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0f608c5c59f661f477637482de52c9a9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"68f77bfa-3b50-4108-a45e-56a3d68b05a7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.3116965} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0f608c5c59f661f477637482de52c9a9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0f608c5c59f661f477637482de52c9a9"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0f608c5c59f661f477637482de52c9a9"} device-1 | {"level":"info","message":"PATCH /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 36ms","method":"PATCH","requestID":"0f608c5c59f661f477637482de52c9a9","responseTime":36,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"a912052ae26c77d08f97ea9a44fabe7c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a912052ae26c77d08f97ea9a44fabe7c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a912052ae26c77d08f97ea9a44fabe7c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143384,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a912052ae26c77d08f97ea9a44fabe7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a912052ae26c77d08f97ea9a44fabe7c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"b2dd5a54-b578-4df5-839d-75bd1d8a3f69","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.3352184} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a912052ae26c77d08f97ea9a44fabe7c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a912052ae26c77d08f97ea9a44fabe7c"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a912052ae26c77d08f97ea9a44fabe7c"} device-1 | {"level":"info","message":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 13ms","method":"GET","requestID":"a912052ae26c77d08f97ea9a44fabe7c","responseTime":13,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.391282,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"70b3f00f-a310-46eb-9877-bdfd03e7f8c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.3532805} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f"} device-1 | {"level":"info","message":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 15ms","method":"GET","requestID":"4b7c4193cc4a7366d54b89abe8d4fe3f","responseTime":15,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ec932804b2c2d1f7c45456c39e7afa5b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.29637,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ec932804b2c2d1f7c45456c39e7afa5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec932804b2c2d1f7c45456c39e7afa5b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to run experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to book experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully booked experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647052,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666944,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"c450041e-bf84-4d51-b99e-4e5f56f68a4b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4106874} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"91365c53-b9f2-4206-aaa1-d766475a5ad1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4111373} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 12ms","method":"GET","requestID":"6ba40bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 13ms","method":"GET","requestID":"6ba432d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Setting up experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully set up experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bada8b0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully running experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684442,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.608678,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"0d1492a6-2b26-4877-8af6-2df6598d7d77","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4744885} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"7ee987d5-71b7-4f8d-a8d7-e6f788d8d158","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4752245} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99555391-5961-4afa-8d15-802ce1d9176e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4775116} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.142709,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bada8b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","rebac_allow":false,"scope_allow":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":"6bada8b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 17ms","method":"GET","requestID":"6bad5a90-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 16ms","method":"GET","requestID":"6bad81a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bada8b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling 200 16ms","method":"POST","requestID":"6bada8b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa6cf33a1-aa80-421f-b17c-cb07e4f1789f#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa6cf33a1-aa80-421f-b17c-cb07e4f1789f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b2d552b5-0350-4ef6-8638-5409faf1abcc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4844022} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29b7d20d-6f6c-4ce9-9984-d2a1e5147b95","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4847243} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb067d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"ec932804b2c2d1f7c45456c39e7afa5b","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb08ee0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f5baeab-a201-41ce-9775-23829fc0dd9a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4900033} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e32469b5-2489-4846-9932-af1dac82025e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.4900467} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.456444,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb08ee0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","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/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bb08ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.790236,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 128ms","method":"POST","requestID":"ec932804b2c2d1f7c45456c39e7afa5b","responseTime":128,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb067d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bb067d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb08ee0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling 200 9ms","method":"POST","requestID":"6bb08ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"2d81091d817c566a913a48313d282c35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb067d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling 200 11ms","method":"POST","requestID":"6bb067d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2d81091d817c566a913a48313d282c35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d81091d817c566a913a48313d282c35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb263a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642173,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d81091d817c566a913a48313d282c35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2d81091d817c566a913a48313d282c35","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b452d250-bace-4646-9160-b6e384a17030","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5023422} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.41492,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb263a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bb263a0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"fdeffcc9-44a0-4996-ba21-f1781556e775","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5046604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d81091d817c566a913a48313d282c35","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb263a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling 200 10ms","method":"POST","requestID":"6bb263a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d81091d817c566a913a48313d282c35"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d81091d817c566a913a48313d282c35"} device-1 | {"level":"info","message":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 12ms","method":"GET","requestID":"2d81091d817c566a913a48313d282c35","responseTime":12,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"42b01893b44543b9ba2cbad5bf5f4c56"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951285,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"42b01893b44543b9ba2cbad5bf5f4c56","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42b01893b44543b9ba2cbad5bf5f4c56"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.157818,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922984,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"42b01893b44543b9ba2cbad5bf5f4c56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42b01893b44543b9ba2cbad5bf5f4c56","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.116363836Z"}]},"request_id":"c405f836-fd7d-420f-b5df-46ca40cdf4a6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.520717} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"62c4b23c-4f07-46c3-926d-d4b02cbcdb47","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5242276} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:07.164381905Z"}]},"request_id":"d21314b1-07a9-476a-88ce-dc0fad040c5a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5259185} device-1 | {"level":"info","message":"GET /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581? 200 16ms","method":"GET","requestID":"6bb43860-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42b01893b44543b9ba2cbad5bf5f4c56","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 19ms","method":"GET","requestID":"6bb45f70-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42b01893b44543b9ba2cbad5bf5f4c56"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42b01893b44543b9ba2cbad5bf5f4c56"} device-1 | {"level":"info","message":"GET /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87? 200 15ms","method":"GET","requestID":"42b01893b44543b9ba2cbad5bf5f4c56","responseTime":15,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Building connection plan","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} 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":"7caee14f-aa4d-414f-ab0f-98580c500d25"},{"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":"00300a5e-f8f7-45c2-8327-6978a3cf168a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9fc8d6fe-26e2-43bf-aa85-322fc83e5b3d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6bb793c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6bb793c0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"6bb793c0-86cf-11ef-a631-87f051e9b6e3","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb?id=324af1fa-0a1f-494b-bba0-9058968960c7","ws://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb?id=57ecb059-318f-4bb6-a468-92418b8cbe11"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.027595,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"528d4158-3374-49b2-a819-e76d1b8dc370","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5463748} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"173f9bbf-16e7-4630-87bd-fc4d43790504","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5466542} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0'","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0'","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6bb808f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6bbd1200-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\"","requestID":"6bbd1200-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6bbd1200-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6bbd3910-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"57ecb059-318f-4bb6-a468-92418b8cbe11\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\"","requestID":"6bbd3910-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6bbd3910-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bfc634598b819df84f802e7d365fb063","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bfc634598b819df84f802e7d365fb063","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"}}},"level":"info","message":"received a callback","requestID":"bfc634598b819df84f802e7d365fb063"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"bfc634598b819df84f802e7d365fb063","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"bfc634598b819df84f802e7d365fb063"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ec932804b2c2d1f7c45456c39e7afa5b"} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bbff830-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbad569d-e43c-4420-9f91-f46384c5fe2c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.5913863} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.751141,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bbff830-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bbff830-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bbff830-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling 200 19ms","method":"POST","requestID":"6bbff830-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28daff044a255610da48dc831e8c685f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28daff044a255610da48dc831e8c685f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"}}},"level":"info","message":"received a callback","requestID":"28daff044a255610da48dc831e8c685f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bc35390-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60d12fd7-0db5-4122-915c-4536c4fc6536","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.6143832} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.088998,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6bc43df0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bc35390-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6bc35390-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bc35390-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling 200 9ms","method":"POST","requestID":"6bc35390-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcef378db-8aaa-4279-a0db-39d186e54de0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abc1140e-cc7f-4f62-9020-36d723345864","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.619008} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.728888,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bc43df0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","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":"6bc43df0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6bc43df0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0 200 8ms","method":"GET","requestID":"6bc43df0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"28daff044a255610da48dc831e8c685f","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"28daff044a255610da48dc831e8c685f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bc74b30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62e097a5-08c7-4a02-a6aa-f254e4f6b9d5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.6396668} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.149309,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bc74b30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bc74b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bc74b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling 200 8ms","method":"POST","requestID":"6bc74b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bc8d1d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71f467ca-7aac-46f9-b6b7-ea8bf42cf854","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.6497054} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317141,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bc8d1d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bc8d1d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bc8d1d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling 200 9ms","method":"POST","requestID":"6bc8d1d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.799694,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4f4bcc225947cebc5a32c75f5a8b8a32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32"} experiment-1 | {"level":"info","message":"GET /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f 200 11ms","method":"GET","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32","responseTime":11,"status":200,"url":"/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f4bcc225947cebc5a32c75f5a8b8a32"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"25705c8338f03282848037087886737e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"25705c8338f03282848037087886737e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","requestID":"25705c8338f03282848037087886737e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.09404,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25705c8338f03282848037087886737e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25705c8338f03282848037087886737e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Attempting to finish experiment","requestID":"25705c8338f03282848037087886737e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.924864,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","device":"b4b0d6b1-a8b2-4344-bc94-2de81c259c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb?id=324af1fa-0a1f-494b-bba0-9058968960c7 HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.152","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c407acef5217cc3180389e14ee8d47e1"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb?id=57ecb059-318f-4bb6-a468-92418b8cbe11 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.153","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ecd875a10afb1b78e739e220f81d5491"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0","device":"f0aa9f9b-5ac9-4884-a94d-48f3e4934581","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"324af1fa-0a1f-494b-bba0-9058968960c7\" from room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"57ecb059-318f-4bb6-a468-92418b8cbe11\" in room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"57ecb059-318f-4bb6-a468-92418b8cbe11\" from room \"http://localhost/rooms/5dba1cf1-f17e-4912-a4be-a08af4eac1bb\""} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcef378db-8aaa-4279-a0db-39d186e54de0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcef378db-8aaa-4279-a0db-39d186e54de0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"d2ee4823-c764-4ebe-8bb2-bd6ec81bd66a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.7233188} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"679045b9dbfe37dc79d4354f61ab776e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"679045b9dbfe37dc79d4354f61ab776e","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf0110c8-db87-4624-871b-edf0c82096bd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.7236354} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f9bed984cb00c764cdd6578f83c650c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7f9bed984cb00c764cdd6578f83c650c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"}}},"level":"info","message":"received a callback","requestID":"679045b9dbfe37dc79d4354f61ab776e"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"}}},"level":"info","message":"received a callback","requestID":"7f9bed984cb00c764cdd6578f83c650c"} device-1 | {"data":{"peerconnection":"cef378db-8aaa-4279-a0db-39d186e54de0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0 204 35ms","method":"DELETE","requestID":"6bd26ec0-86cf-11ef-b00e-2fb111b9dda5","responseTime":35,"status":204,"url":"/peerconnections/cef378db-8aaa-4279-a0db-39d186e54de0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"},"level":"info","message":"Successfully finished experiment","requestID":"25705c8338f03282848037087886737e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bda5e00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4b0d6b1-a8b2-4344-bc94-2de81c259c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a389d05-364e-416a-91d4-1944cf2513c7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.7644157} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.438134,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bda5e00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6bda5e00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bda5e00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling 200 8ms","method":"POST","requestID":"6bda5e00-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bdc0bb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa6cf33a1-aa80-421f-b17c-cb07e4f1789f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa6cf33a1-aa80-421f-b17c-cb07e4f1789f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"9a1185f3-cdd6-4163-a3d4-a40c1ddf99f9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.7716057} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed1a29b8-3767-4664-bbdd-6877e02ab60c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.771967} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"25705c8338f03282848037087886737e","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0aa9f9b-5ac9-4884-a94d-48f3e4934581","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5dfef5af-a86f-4d82-8462-c3e372a855ce","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.7757776} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537147,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6bdc0bb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bdc0bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bdc0bb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling 200 9ms","method":"POST","requestID":"6bdc0bb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f","requestID":"25705c8338f03282848037087886737e"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25705c8338f03282848037087886737e"} experiment-1 | {"level":"info","message":"DELETE /experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f 204 142ms","method":"DELETE","requestID":"25705c8338f03282848037087886737e","responseTime":142,"status":204,"url":"/experiments/a6cf33a1-aa80-421f-b17c-cb07e4f1789f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"679045b9dbfe37dc79d4354f61ab776e","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"679045b9dbfe37dc79d4354f61ab776e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"7f9bed984cb00c764cdd6578f83c650c","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"7f9bed984cb00c764cdd6578f83c650c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"0.641","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4506c6c18222be80a0d54b4d7a84f7f5"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"0.622","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2a60c4e4321a752a58f43260d667029f"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b4b0d6b1-a8b2-4344-bc94-2de81c259c87' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":13.177475,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f0aa9f9b-5ac9-4884-a94d-48f3e4934581' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"664b7cb4-8062-47b7-af42-ba5a2f818125","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.8811052} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"190044f1-d414-4c40-b80a-d073769c7e35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.8857014} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"2a72a587-8a3f-4905-981e-a258616c7e1b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.8957853} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4cd1dd4a-a17b-4c8c-98ef-7e2ce26df2fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.8960361} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"d54c01ee-71ab-4008-b11f-6a601123ebec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.899779} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"b27e4953bc7ce0dc3849e27d254f4e6d","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A","level":"info","message":"auth send jwt","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.864179,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541089,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA4OX0.DNOv2sRKel0dNSnEqSqIavC-O6smABlXl6Fvd2Ltv1A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3183d416-c36a-40b0-89d0-8c7cd9cada57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.9219942} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed2c481b-8cbf-4cfe-a4fe-a9ec1dd1eae0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.9259343} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"578418d1-0803-440d-a39c-958dd7780186","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.941718} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49d1ea9c-6fe3-44e9-a012-c57df3caeba5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.941829} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"30cd3b84-0627-42a3-8c52-13d8f0c26a0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541089.9459362} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"449e457af4e1dd1e909ae6ca4c7d11b7","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MH0.2i-2-9liTcasNZ3Ihqsvhw0d3WWAoLHr0OD2760zFYQ","level":"info","message":"auth send jwt","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.189811,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541090,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MH0.2i-2-9liTcasNZ3Ihqsvhw0d3WWAoLHr0OD2760zFYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"00131ab5-a03d-4fd1-973c-027e3d0f2008","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541090.4319234} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc285f56-b40e-4d36-bca1-ee723c36834c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541090.4375336} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"5bbeee6a-d9ce-4ec0-98ba-5a9cb0d564f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541090.4500782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437"} gateway-1 | {"time_local":"10/Oct/2024:06:18:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7c669706-cd95-4e7a-8390-546e3c5d060a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437"} device-1 | {"level":"info","message":"PATCH /devices/7c669706-cd95-4e7a-8390-546e3c5d060a 200 32ms","method":"PATCH","requestID":"bc5f18e11f6bdf3c29f069d6f6a43437","responseTime":32,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MH0.2i-2-9liTcasNZ3Ihqsvhw0d3WWAoLHr0OD2760zFYQ","level":"info","message":"auth send jwt","requestID":"668e929c6f381f36527540d777648587"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"668e929c6f381f36527540d777648587","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"668e929c6f381f36527540d777648587"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220615,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"668e929c6f381f36527540d777648587","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541090,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MH0.2i-2-9liTcasNZ3Ihqsvhw0d3WWAoLHr0OD2760zFYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"668e929c6f381f36527540d777648587","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"668e929c6f381f36527540d777648587"} gateway-1 | {"time_local":"10/Oct/2024:06:18:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"668e929c6f381f36527540d777648587"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/websocket 200 19ms","method":"POST","requestID":"668e929c6f381f36527540d777648587","responseTime":19,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6467d0210f68706a13c71776f5164715","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6467d0210f68706a13c71776f5164715","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/websocket 200 1ms","method":"OPTIONS","requestID":"6467d0210f68706a13c71776f5164715","responseTime":1,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/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":"6467d0210f68706a13c71776f5164715"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MX0._wcgitmTGkf4T7nSR4E2gthTL1VCSlztNIGi7zC4rpU","level":"info","message":"auth send jwt","requestID":"e93103d5bd0c59816175c66f7617cdb0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e93103d5bd0c59816175c66f7617cdb0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e93103d5bd0c59816175c66f7617cdb0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180966,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e93103d5bd0c59816175c66f7617cdb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541091,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5MX0._wcgitmTGkf4T7nSR4E2gthTL1VCSlztNIGi7zC4rpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e93103d5bd0c59816175c66f7617cdb0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e93103d5bd0c59816175c66f7617cdb0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e93103d5bd0c59816175c66f7617cdb0"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/websocket 200 19ms","method":"POST","requestID":"e93103d5bd0c59816175c66f7617cdb0","responseTime":19,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b35e1a26c92a335a2b6c5cc1adc5e9d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3b35e1a26c92a335a2b6c5cc1adc5e9d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3b35e1a26c92a335a2b6c5cc1adc5e9d"} device-1 | {"level":"info","message":"OPTIONS /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 1ms","method":"OPTIONS","requestID":"3b35e1a26c92a335a2b6c5cc1adc5e9d","responseTime":1,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"89de5d04d650f5f8a955e5d27c10a04c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"89de5d04d650f5f8a955e5d27c10a04c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"89de5d04d650f5f8a955e5d27c10a04c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.376928,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"89de5d04d650f5f8a955e5d27c10a04c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"89de5d04d650f5f8a955e5d27c10a04c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"c66fa622-3770-4213-b5cc-fc89af0cb3ed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.0330286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"89de5d04d650f5f8a955e5d27c10a04c","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05034459-9426-400a-99c0-d82f30a8b186","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.0395942} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"89de5d04d650f5f8a955e5d27c10a04c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"29f7be2c-8553-4597-8f27-9b56615453f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.0535138} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"89de5d04d650f5f8a955e5d27c10a04c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"89de5d04d650f5f8a955e5d27c10a04c"} device-1 | {"level":"info","message":"PATCH /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 41ms","method":"PATCH","requestID":"89de5d04d650f5f8a955e5d27c10a04c","responseTime":41,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"89de5d04d650f5f8a955e5d27c10a04c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220521,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5edc14fb7e07879cdc4d491cfec0c7e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"15524580-9f3e-4ddd-a687-8eff88c124dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.085689} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0"} device-1 | {"level":"info","message":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 15ms","method":"GET","requestID":"5edc14fb7e07879cdc4d491cfec0c7e0","responseTime":15,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"918360efe6aa80ee8df687a8a2f46064"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"918360efe6aa80ee8df687a8a2f46064","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"918360efe6aa80ee8df687a8a2f46064"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.995263,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"918360efe6aa80ee8df687a8a2f46064","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"918360efe6aa80ee8df687a8a2f46064","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"7a3a887d-d034-4c05-84a0-14d78dc386af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.1082027} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"918360efe6aa80ee8df687a8a2f46064","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"918360efe6aa80ee8df687a8a2f46064"} device-1 | {"level":"info","message":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? 200 15ms","method":"GET","requestID":"918360efe6aa80ee8df687a8a2f46064","responseTime":15,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"918360efe6aa80ee8df687a8a2f46064"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.464257,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f5f21c7cfcdcc5067ed0e366d41218f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to run experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to book experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully booked experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945803,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961076,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"42e687ae-a003-4404-9141-97372bc02dd4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.1712387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"fd03c5eb-1f8e-4c97-b526-493948a6ae0c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.1717215} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 13ms","method":"GET","requestID":"6d48e220-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? 200 11ms","method":"GET","requestID":"6d493040-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Setting up experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully set up experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d514690-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully running experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915297,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8626,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9698c17-eb93-4587-b651-4421316fa850","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2260303} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.979909,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d514690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"6d514690-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"53c1b8c8-e7e0-4376-baee-b43dbf47e305","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2289886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"cb62e48e-5aa0-42e5-971e-ad0dedc3892a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2310739} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d514690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling 200 23ms","method":"POST","requestID":"6d514690-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 29ms","method":"GET","requestID":"6d50aa50-86cf-11ef-b00e-2fb111b9dda5","responseTime":29,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d556540-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F27ca2487-3f19-4c6b-a60b-3ce79e567f95#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F27ca2487-3f19-4c6b-a60b-3ce79e567f95","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b5af7992-9cb0-4180-990f-07b742b2540e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2448595} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e0047ff-ec06-41ae-859a-6a8d9fbe46e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.245241} device-1 | {"level":"info","message":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? 200 31ms","method":"GET","requestID":"6d50f870-86cf-11ef-b00e-2fb111b9dda5","responseTime":31,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d562890-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9c48af2-aa08-4922-9135-6699abb98666","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2531164} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.228737,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d556540-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","rebac_allow":false,"scope_allow":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":"6d556540-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"607276bb-4174-4b05-8911-04bd4a021d74","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.258084} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d556540-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8","responseTime":136,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling 200 14ms","method":"POST","requestID":"6d556540-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.465682,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d562890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","rebac_allow":false,"scope_allow":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":"6d562890-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"9ae02da878f49299080a90c9f21c3ccd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d562890-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9ae02da878f49299080a90c9f21c3ccd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling 200 13ms","method":"POST","requestID":"6d562890-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ae02da878f49299080a90c9f21c3ccd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d587280-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705852,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9ae02da878f49299080a90c9f21c3ccd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9ae02da878f49299080a90c9f21c3ccd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b50c9188-e269-4eac-b2f5-a02d8d3bccf6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2680676} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396294,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d587280-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d587280-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"309dd04e-906d-48c6-9b9c-28fc533c1512","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2698915} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ae02da878f49299080a90c9f21c3ccd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d587280-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling 200 9ms","method":"POST","requestID":"6d587280-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ae02da878f49299080a90c9f21c3ccd"} device-1 | {"level":"info","message":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 11ms","method":"GET","requestID":"9ae02da878f49299080a90c9f21c3ccd","responseTime":11,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ae02da878f49299080a90c9f21c3ccd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"11a305e7d5e2ff830988f5b0cf940fc0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"11a305e7d5e2ff830988f5b0cf940fc0","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900474,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11a305e7d5e2ff830988f5b0cf940fc0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.598967,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.120095,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"11a305e7d5e2ff830988f5b0cf940fc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11a305e7d5e2ff830988f5b0cf940fc0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.895712267Z"}]},"request_id":"68cef852-d082-4cc3-8353-d2b288e667b5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2835495} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"d4c61ff1-6e43-48eb-8989-af12f29746a5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.2846432} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:09.941668468Z"}]},"request_id":"e3c2cae0-02f0-400a-adb6-227802cecb9d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.288417} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"11a305e7d5e2ff830988f5b0cf940fc0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64? 200 15ms","method":"GET","requestID":"6d5a2030-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? 200 15ms","method":"GET","requestID":"6d5a4740-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11a305e7d5e2ff830988f5b0cf940fc0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Building connection plan","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} 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":"80bcb9bf-897d-453b-a401-d067e1c98e03"},{"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":"e76dbc50-80c1-49c0-83ca-8c784b27ffb4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b610f948-cff8-47a0-8502-11f20c69fae5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? 200 14ms","method":"GET","requestID":"11a305e7d5e2ff830988f5b0cf940fc0","responseTime":14,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c669706-cd95-4e7a-8390-546e3c5d060a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11a305e7d5e2ff830988f5b0cf940fc0"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6d5cdf50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6d5cdf50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"6d5cdf50-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48?id=f455ed8e-7c5c-4ed0-8d8f-119b3032b031","ws://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48?id=94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.080879,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"826d1422-46eb-4edc-a96f-89ba4050fa09","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.3074346} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"321b8b27-6ce8-49d8-9b7b-cb6288cedea2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.3076773} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2'","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2'","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"6d5d5480-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6d625d90-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\"","requestID":"6d625d90-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6d625d90-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f40a539c1899d13958ac494777f41a01","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f40a539c1899d13958ac494777f41a01","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6d62abb0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f455ed8e-7c5c-4ed0-8d8f-119b3032b031\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\"","requestID":"6d62abb0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6d62abb0-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"}}},"level":"info","message":"received a callback","requestID":"f40a539c1899d13958ac494777f41a01"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"f40a539c1899d13958ac494777f41a01","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"f40a539c1899d13958ac494777f41a01"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5f21c7cfcdcc5067ed0e366d41218f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d660710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b05451bb-46a5-4f13-ad08-a5ae830c6293","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.357731} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.336204,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d660710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d660710-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d660710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling 200 13ms","method":"POST","requestID":"6d660710-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd1a18690b8ea96e2783cef219f8d123","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dd1a18690b8ea96e2783cef219f8d123","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d687810-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"}}},"level":"info","message":"received a callback","requestID":"dd1a18690b8ea96e2783cef219f8d123"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8c26705-6fc9-4ca5-95cb-6254edfae287","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.3730433} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.344306,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6d691450-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d687810-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d687810-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d687810-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling 200 8ms","method":"POST","requestID":"6d687810-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff55888b-a6bc-46f2-bfe1-a977048a05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4be63ec-29da-4a90-b887-27d50cc42635","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.3778875} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.896299,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d691450-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2","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":"6d691450-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6d691450-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2 200 8ms","method":"GET","requestID":"6d691450-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"dd1a18690b8ea96e2783cef219f8d123","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"dd1a18690b8ea96e2783cef219f8d123"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d6c6fb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0722f887-cd58-40d8-9fc7-a5b8e6e0187c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.399494} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254272,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d6c6fb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d6c6fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d6c6fb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling 200 8ms","method":"POST","requestID":"6d6c6fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d6df650-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f2efc55-d3b3-4525-947f-9b240c302e81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.4091969} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.096953,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d6df650-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d6df650-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d6df650-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling 200 7ms","method":"POST","requestID":"6d6df650-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"87a9ed89e3cac0d73212ed380ca01618"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87a9ed89e3cac0d73212ed380ca01618","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","requestID":"87a9ed89e3cac0d73212ed380ca01618"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.315903,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"87a9ed89e3cac0d73212ed380ca01618","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"87a9ed89e3cac0d73212ed380ca01618","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","requestID":"87a9ed89e3cac0d73212ed380ca01618"} experiment-1 | {"level":"info","message":"GET /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95 200 15ms","method":"GET","requestID":"87a9ed89e3cac0d73212ed380ca01618","responseTime":15,"status":200,"url":"/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87a9ed89e3cac0d73212ed380ca01618"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3ffc47bdc699e220acf6e7a6c84f0944","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.041201,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3ffc47bdc699e220acf6e7a6c84f0944","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ffc47bdc699e220acf6e7a6c84f0944","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Attempting to finish experiment","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.847558,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/987625c7-b831-4d82-bdbc-2e61abce2f48?id=94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.161","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"69fca7268adccedceff8a901b7010802"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"94a3bfe3-9622-4b4d-9fb8-b9b5cefdcae0\" from room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2","device":"7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/987625c7-b831-4d82-bdbc-2e61abce2f48?id=f455ed8e-7c5c-4ed0-8d8f-119b3032b031 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.160","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1902dca85eaa6120e086809176a63294"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f455ed8e-7c5c-4ed0-8d8f-119b3032b031\" in room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f455ed8e-7c5c-4ed0-8d8f-119b3032b031\" from room \"http://localhost/rooms/987625c7-b831-4d82-bdbc-2e61abce2f48\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"124191b97c5205259f7c202a03042eb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"124191b97c5205259f7c202a03042eb3","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"747bc4c4674717d066d84597e04cfb8d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"747bc4c4674717d066d84597e04cfb8d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"}}},"level":"info","message":"received a callback","requestID":"124191b97c5205259f7c202a03042eb3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"}}},"level":"info","message":"received a callback","requestID":"747bc4c4674717d066d84597e04cfb8d"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff55888b-a6bc-46f2-bfe1-a977048a05d2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff55888b-a6bc-46f2-bfe1-a977048a05d2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"7052507e-ec8a-4bb7-9e23-0e80e7766541","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.497268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd688c33-b3db-466c-ba5e-a956d9998c40","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.4975755} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ff55888b-a6bc-46f2-bfe1-a977048a05d2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2 204 41ms","method":"DELETE","requestID":"6d785690-86cf-11ef-b00e-2fb111b9dda5","responseTime":41,"status":204,"url":"/peerconnections/ff55888b-a6bc-46f2-bfe1-a977048a05d2"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"},"level":"info","message":"Successfully finished experiment","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d81f380-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe9235f0-f8cb-49e2-a58e-02e723e026b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.5417328} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.154997,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d81f380-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6d81f380-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d81f380-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling 200 11ms","method":"POST","requestID":"6d81f380-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d841660-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F27ca2487-3f19-4c6b-a60b-3ce79e567f95': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F27ca2487-3f19-4c6b-a60b-3ce79e567f95","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"432f95aa-0cea-4b0a-897d-7328c5414250","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.5508177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34db8feb-c941-4f6a-83c8-81d035afc32c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.551149} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3ffc47bdc699e220acf6e7a6c84f0944","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c669706-cd95-4e7a-8390-546e3c5d060a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16fee215-504a-492c-9d76-cbd82b897aaa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.5552528} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.442269,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6d841660-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c669706-cd95-4e7a-8390-546e3c5d060a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d841660-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d841660-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling 200 11ms","method":"POST","requestID":"6d841660-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/7c669706-cd95-4e7a-8390-546e3c5d060a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ffc47bdc699e220acf6e7a6c84f0944"} experiment-1 | {"level":"info","message":"DELETE /experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95 204 160ms","method":"DELETE","requestID":"3ffc47bdc699e220acf6e7a6c84f0944","responseTime":160,"status":204,"url":"/experiments/27ca2487-3f19-4c6b-a60b-3ce79e567f95"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"2.139","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"30f4f53504c518f569355ac9382100a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"124191b97c5205259f7c202a03042eb3","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"124191b97c5205259f7c202a03042eb3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"747bc4c4674717d066d84597e04cfb8d","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"747bc4c4674717d066d84597e04cfb8d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"f883f3cf92de5631128b8b62bb0edac2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f883f3cf92de5631128b8b62bb0edac2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f883f3cf92de5631128b8b62bb0edac2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.223171,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f883f3cf92de5631128b8b62bb0edac2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.655","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"07579e2cadeb779d0160a4e299c244c9"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","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/7c669706-cd95-4e7a-8390-546e3c5d060a' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"29df6528-7c1f-41cf-8c0e-c4b4f8d26e08","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.6457815} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7eb0611d-a27d-468d-a8ec-b9dbb6cc6e64' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7da4132-cf30-4192-9a6f-855b61ebb2dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.6505246} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"93dcfd91-68c2-451b-9f5b-be047bd5ad3a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.659043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce216113-de4a-4b11-a61e-5cee53cc4d8a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.6592817} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"0e7dbd02-5fe6-4cb8-b8f7-6088a6691d89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.663099} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f883f3cf92de5631128b8b62bb0edac2"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f883f3cf92de5631128b8b62bb0edac2"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"f883f3cf92de5631128b8b62bb0edac2","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM","level":"info","message":"auth send jwt","requestID":"f3fe0c438b22daa25059fd5f2dc02bac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f3fe0c438b22daa25059fd5f2dc02bac"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.729924,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f3fe0c438b22daa25059fd5f2dc02bac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541092,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5Mn0.A80S3mmBLym51Oa986WgYtj9AfAhNSIruVaBlf85stM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"55242f88-06b4-417d-bb99-b1beb5511617","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.6911902} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50dbcb5e-7cd7-4303-8598-87db1cfe5633","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.69556} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"6a8d0039-107e-44fa-ab66-5e3732aa658d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.7064126} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94a454d3-af23-463e-af3f-e4a1381ec8c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.7065907} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"7e3b6fa9-bcc4-4e94-9c06-3736a413f60e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541092.7103522} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f3fe0c438b22daa25059fd5f2dc02bac"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f3fe0c438b22daa25059fd5f2dc02bac","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3fe0c438b22daa25059fd5f2dc02bac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5M30.ErjTcSFrsJqLksA9Cs19iTsdTpbBVxkU03eOrYFXPLw","level":"info","message":"auth send jwt","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.560919,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541093,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5M30.ErjTcSFrsJqLksA9Cs19iTsdTpbBVxkU03eOrYFXPLw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"866d0f7d-3fd1-4fbb-9ff7-d724195bcabe","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541093.1955755} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44884cfa-9074-4175-af54-e811e13cf5e0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541093.200017} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"d57f4103-8e13-4ea0-8ad5-db446a8fed1c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541093.2113183} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9"} gateway-1 | {"time_local":"10/Oct/2024:06:18:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a55471e3-e277-47d0-8602-85fc360eac75 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9"} device-1 | {"level":"info","message":"PATCH /devices/a55471e3-e277-47d0-8602-85fc360eac75 200 27ms","method":"PATCH","requestID":"4a9c44cb43de83b9609c0c71e1b9eec9","responseTime":27,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5M30.ErjTcSFrsJqLksA9Cs19iTsdTpbBVxkU03eOrYFXPLw","level":"info","message":"auth send jwt","requestID":"20b43029c64d80f2ac54500a22643504"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20b43029c64d80f2ac54500a22643504","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"20b43029c64d80f2ac54500a22643504"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.370739,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"20b43029c64d80f2ac54500a22643504","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541093,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5M30.ErjTcSFrsJqLksA9Cs19iTsdTpbBVxkU03eOrYFXPLw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20b43029c64d80f2ac54500a22643504","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"20b43029c64d80f2ac54500a22643504"} gateway-1 | {"time_local":"10/Oct/2024:06:18:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"20b43029c64d80f2ac54500a22643504"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/websocket 200 15ms","method":"POST","requestID":"20b43029c64d80f2ac54500a22643504","responseTime":15,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c97c2b863c9b5899f7882e8001717fc6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c97c2b863c9b5899f7882e8001717fc6","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/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":"c97c2b863c9b5899f7882e8001717fc6"} device-1 | {"level":"info","message":"OPTIONS /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/websocket 200 1ms","method":"OPTIONS","requestID":"c97c2b863c9b5899f7882e8001717fc6","responseTime":1,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk","level":"info","message":"auth send jwt","requestID":"43d034001f3b15e331a7d8637844fb46"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43d034001f3b15e331a7d8637844fb46","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"43d034001f3b15e331a7d8637844fb46"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186286,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"43d034001f3b15e331a7d8637844fb46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"43d034001f3b15e331a7d8637844fb46","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"43d034001f3b15e331a7d8637844fb46"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/websocket 200 20ms","method":"POST","requestID":"43d034001f3b15e331a7d8637844fb46","responseTime":20,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"43d034001f3b15e331a7d8637844fb46"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5baf3a5ee3b450793d80a804c77d602d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5baf3a5ee3b450793d80a804c77d602d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5baf3a5ee3b450793d80a804c77d602d"} device-1 | {"level":"info","message":"OPTIONS /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 1ms","method":"OPTIONS","requestID":"5baf3a5ee3b450793d80a804c77d602d","responseTime":1,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk","level":"info","message":"auth send jwt","requestID":"73514bba715619cdbeab28297532429a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73514bba715619cdbeab28297532429a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"73514bba715619cdbeab28297532429a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313646,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73514bba715619cdbeab28297532429a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73514bba715619cdbeab28297532429a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"7d84106a-0573-4fdd-b10c-d00c61d2d543","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.8209438} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73514bba715619cdbeab28297532429a","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37e2a0d0-1292-4a55-9a67-a85a07492182","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.8275113} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"73514bba715619cdbeab28297532429a","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"4dce7918-044d-4c58-9eb5-b3b2966ad3c9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.8399005} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73514bba715619cdbeab28297532429a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"73514bba715619cdbeab28297532429a"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"73514bba715619cdbeab28297532429a"} device-1 | {"level":"info","message":"PATCH /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 34ms","method":"PATCH","requestID":"73514bba715619cdbeab28297532429a","responseTime":34,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk","level":"info","message":"auth send jwt","requestID":"5c1ff5ac5921e88475ff7561c078a716"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c1ff5ac5921e88475ff7561c078a716","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c1ff5ac5921e88475ff7561c078a716"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142292,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5c1ff5ac5921e88475ff7561c078a716","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c1ff5ac5921e88475ff7561c078a716","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"bb8704a6-edff-4b3e-8d56-1034ac8b9a81","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.8689134} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c1ff5ac5921e88475ff7561c078a716","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c1ff5ac5921e88475ff7561c078a716"} device-1 | {"level":"info","message":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 19ms","method":"GET","requestID":"5c1ff5ac5921e88475ff7561c078a716","responseTime":19,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c1ff5ac5921e88475ff7561c078a716"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk","level":"info","message":"auth send jwt","requestID":"502fc6792e39b64cb0a0ec0121983aa1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"502fc6792e39b64cb0a0ec0121983aa1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"502fc6792e39b64cb0a0ec0121983aa1"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"502fc6792e39b64cb0a0ec0121983aa1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"502fc6792e39b64cb0a0ec0121983aa1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"8f311fb8-ece8-4722-88c3-40c60ed2e9a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.893815} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"502fc6792e39b64cb0a0ec0121983aa1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"502fc6792e39b64cb0a0ec0121983aa1"} device-1 | {"level":"info","message":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? 200 14ms","method":"GET","requestID":"502fc6792e39b64cb0a0ec0121983aa1","responseTime":14,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"502fc6792e39b64cb0a0ec0121983aa1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk","level":"info","message":"auth send jwt","requestID":"cbaf1b485702e0784f0d1d162d127268"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbaf1b485702e0784f0d1d162d127268","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cbaf1b485702e0784f0d1d162d127268"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.348002,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cbaf1b485702e0784f0d1d162d127268","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cbaf1b485702e0784f0d1d162d127268","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to run experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to book experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully booked experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669378,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980101,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"f997758a-c3cb-4a0d-8252-5a2002007087","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.9562435} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"6d1a0e4f-bdc8-49a2-bf26-8c00c5a4c357","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541094.9579234} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 16ms","method":"GET","requestID":"6ef1b020-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? 200 15ms","method":"GET","requestID":"6ef1fe40-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Setting up experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully set up experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6efbe950-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully running experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955299,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891176,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.022738,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7413e162-4ee4-471d-a517-9331ad9a1409","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0190852} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6efbe950-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","rebac_allow":false,"scope_allow":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":"6efbe950-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"0cd0e607-6009-483d-9907-66803386759a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0273862} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"2ad479e8-e18a-4a3c-bf87-849e1be422c5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.030934} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6efbe950-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling 200 20ms","method":"POST","requestID":"6efbe950-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F256033b8-909b-41bf-85ed-ce2c285c48b7#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F256033b8-909b-41bf-85ed-ce2c285c48b7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c3362c77-0774-4e92-b5d6-2f847e33b5d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0345573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b293a807-2e27-44fb-87b5-8df67f1210cf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0347984} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 27ms","method":"GET","requestID":"6efb7420-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cbaf1b485702e0784f0d1d162d127268","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6eff92d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? 200 30ms","method":"GET","requestID":"6efb9b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f00a440-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b708e3e-e882-40fc-a329-434f2f6b73b9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.04412} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.0085,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6eff92d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6eff92d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cbaf1b485702e0784f0d1d162d127268"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbaf1b485702e0784f0d1d162d127268"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"cbaf1b485702e0784f0d1d162d127268","responseTime":143,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43c978ae-7aa0-4f01-b733-33454d29b69a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0504942} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6eff92d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.243626,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling 200 14ms","method":"POST","requestID":"6eff92d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"25d3e69cc93b7b24eeda7b70bc824aea"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f00a440-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","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":"25d3e69cc93b7b24eeda7b70bc824aea","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f00a440-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25d3e69cc93b7b24eeda7b70bc824aea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f00a440-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling 200 11ms","method":"POST","requestID":"6f00a440-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"25d3e69cc93b7b24eeda7b70bc824aea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"25d3e69cc93b7b24eeda7b70bc824aea","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f02a010-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"8abcfe9e-fbf8-4ea5-b510-ede2ef3b674a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0613043} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b148f620-74d0-4ed4-a1ee-1b09c4475ac9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.061369} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25d3e69cc93b7b24eeda7b70bc824aea","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.173323,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f02a010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f02a010-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25d3e69cc93b7b24eeda7b70bc824aea"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25d3e69cc93b7b24eeda7b70bc824aea"} device-1 | {"level":"info","message":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 13ms","method":"GET","requestID":"25d3e69cc93b7b24eeda7b70bc824aea","responseTime":13,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f02a010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling 200 10ms","method":"POST","requestID":"6f02a010-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"f205993063b012902b56f68075c96aff"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f205993063b012902b56f68075c96aff","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f205993063b012902b56f68075c96aff"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801615,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625957,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f205993063b012902b56f68075c96aff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f205993063b012902b56f68075c96aff","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.659009580Z"}]},"request_id":"0cd611c4-2eea-4379-940d-b389f5717767","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.0773296} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"0831c196-62b2-4c9b-8457-4aa38f559392","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.078035} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:12.706373368Z"}]},"request_id":"2cbbfe12-757e-46be-a77d-25baace6ad27","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.078929} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f205993063b012902b56f68075c96aff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/6e588741-bf11-4da8-a1da-747aedd80e1e? 200 16ms","method":"GET","requestID":"6f044dc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? 200 14ms","method":"GET","requestID":"6f049be0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f205993063b012902b56f68075c96aff"} device-1 | {"level":"info","message":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? 200 15ms","method":"GET","requestID":"f205993063b012902b56f68075c96aff","responseTime":15,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Building connection plan","requestID":"cbaf1b485702e0784f0d1d162d127268"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a55471e3-e277-47d0-8602-85fc360eac75? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f205993063b012902b56f68075c96aff"} 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":"cfd92671-e41f-495d-81dc-cc6fd07b2e4e"},{"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":"85d8c72b-6981-4d4d-bc53-dbe0fd8dbdc0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7dc17d38-9a21-4cfc-8832-f9bf5ef317cf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cbaf1b485702e0784f0d1d162d127268"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6f0733f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6f0733f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"6f0733f0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0?id=2add0576-dad3-4008-9968-bebd9cad0c63","ws://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0?id=29e11b5a-8b8b-4380-b514-1ee3a5a701da"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"cbaf1b485702e0784f0d1d162d127268"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.83179,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541094,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NH0.ql5iUvRYX9Bbp0Yo1f32--cg7ASnGlD_qw31pA8XBLk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"b02b1cd6-2cc5-45d1-8341-0bfa1b9353f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.1009257} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0286ab7a-4d7e-461c-8c89-57218670af14","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.1013687} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff'","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff'","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} 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":"6f07a920-86cf-11ef-b00e-2fb111b9dda5","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":"6f07a920-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6f0cd940-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\"","requestID":"6f0cd940-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6f0cd940-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f3fc25c2e0242a083511cc99a7b5aea2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f3fc25c2e0242a083511cc99a7b5aea2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"f3fc25c2e0242a083511cc99a7b5aea2"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6f0d9c90-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"29e11b5a-8b8b-4380-b514-1ee3a5a701da\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\"","requestID":"6f0d9c90-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6f0d9c90-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"f3fc25c2e0242a083511cc99a7b5aea2","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"f3fc25c2e0242a083511cc99a7b5aea2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd660f000d5efd41ee5c39e48abc0e6a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fd660f000d5efd41ee5c39e48abc0e6a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"fd660f000d5efd41ee5c39e48abc0e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cbaf1b485702e0784f0d1d162d127268"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f111f00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"fd660f000d5efd41ee5c39e48abc0e6a","responseTime":13,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"fd660f000d5efd41ee5c39e48abc0e6a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afb25fac24ee25d90d11c782e284a0c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"afb25fac24ee25d90d11c782e284a0c2","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"040a55d7-1ee8-42fc-a8be-bd980920df13","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.1568625} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"afb25fac24ee25d90d11c782e284a0c2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.93724,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f111f00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6f111f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"afb25fac24ee25d90d11c782e284a0c2","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"afb25fac24ee25d90d11c782e284a0c2"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f111f00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling 200 16ms","method":"POST","requestID":"6f111f00-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62989c23849dda915e6f34ebe72c49c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62989c23849dda915e6f34ebe72c49c8","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f13de20-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"62989c23849dda915e6f34ebe72c49c8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10c47259-a164-4e5d-9946-a73a8ccd3686","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.1741767} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.623401,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6f14a170-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f13de20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f13de20-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0ac315e-839e-4e2a-82fb-e0db9cec2bb6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.1794984} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.303934,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f13de20-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f14a170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling 200 10ms","method":"POST","requestID":"6f13de20-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f14a170-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6f14a170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff 200 8ms","method":"GET","requestID":"6f14a170-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"62989c23849dda915e6f34ebe72c49c8","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"62989c23849dda915e6f34ebe72c49c8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f17fcd0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"288bd9bc-62c7-4628-93b4-39f4d1c496a4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.2015522} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.10317,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f17fcd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f17fcd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f17fcd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling 200 8ms","method":"POST","requestID":"6f17fcd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f198370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"973ae5e2-cff4-4ba7-8f04-5ed54a5d972b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.2110498} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.329667,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f198370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f198370-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f198370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling 200 7ms","method":"POST","requestID":"6f198370-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"993ff1dd3b901c448fd0241bfad79c0b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"993ff1dd3b901c448fd0241bfad79c0b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","requestID":"993ff1dd3b901c448fd0241bfad79c0b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.693839,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"993ff1dd3b901c448fd0241bfad79c0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"993ff1dd3b901c448fd0241bfad79c0b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","requestID":"993ff1dd3b901c448fd0241bfad79c0b"} experiment-1 | {"level":"info","message":"GET /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7 200 12ms","method":"GET","requestID":"993ff1dd3b901c448fd0241bfad79c0b","responseTime":12,"status":200,"url":"/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"993ff1dd3b901c448fd0241bfad79c0b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"e4131593227218ce69cb9a8b45cf9746"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e4131593227218ce69cb9a8b45cf9746","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","requestID":"e4131593227218ce69cb9a8b45cf9746"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.27479,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"e4131593227218ce69cb9a8b45cf9746","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4131593227218ce69cb9a8b45cf9746","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Attempting to finish experiment","requestID":"e4131593227218ce69cb9a8b45cf9746"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.251056,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0?id=2add0576-dad3-4008-9968-bebd9cad0c63 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"accfaa5b51d0e164838f5e9b98140637"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2add0576-dad3-4008-9968-bebd9cad0c63\" from room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0?id=29e11b5a-8b8b-4380-b514-1ee3a5a701da HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.157","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"37e7b4ebfc20818e83c41f8f4a9da928"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"29e11b5a-8b8b-4380-b514-1ee3a5a701da\" in room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"29e11b5a-8b8b-4380-b514-1ee3a5a701da\" from room \"http://localhost/rooms/852d4193-bf8c-443d-8e0c-23357ea2c9d0\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","device":"6e588741-bf11-4da8-a1da-747aedd80e1e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8ffbf671baf596013932245ce0b5abed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbf1ee6b1-65f8-48d5-b578-97ab3a6d88ff': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"f475c148-a1bb-4c43-b49d-91bc26738cdd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.2884665} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8ffbf671baf596013932245ce0b5abed","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"17d1d83b52b97f9603a2b45880799897","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48b335fe-2e5f-4893-b7f3-69adb2c91b49","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.2888417} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"17d1d83b52b97f9603a2b45880799897","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"8ffbf671baf596013932245ce0b5abed"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"}}},"level":"info","message":"received a callback","requestID":"17d1d83b52b97f9603a2b45880799897"} device-1 | {"data":{"peerconnection":"bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff 204 37ms","method":"DELETE","requestID":"6f239590-86cf-11ef-b00e-2fb111b9dda5","responseTime":37,"status":204,"url":"/peerconnections/bf1ee6b1-65f8-48d5-b578-97ab3a6d88ff"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"},"level":"info","message":"Successfully finished experiment","requestID":"e4131593227218ce69cb9a8b45cf9746"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f2bfa00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa55471e3-e277-47d0-8602-85fc360eac75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"081da5cc-8c1c-4792-87f8-ff0affefebb0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.3336687} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.435001,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f2bfa00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a55471e3-e277-47d0-8602-85fc360eac75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f2bfa00-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f2bfa00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling 200 11ms","method":"POST","requestID":"6f2bfa00-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/a55471e3-e277-47d0-8602-85fc360eac75/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F256033b8-909b-41bf-85ed-ce2c285c48b7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F256033b8-909b-41bf-85ed-ce2c285c48b7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a5b12fe3-0aee-45aa-859a-669eb4388366","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.3405252} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f692fd1-8202-49da-84d7-a4fe942d4833","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.3406527} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f2df5d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"e4131593227218ce69cb9a8b45cf9746","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e588741-bf11-4da8-a1da-747aedd80e1e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d4395ec-7a7a-4fc1-96f9-c65194c22686","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.3453755} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.108904,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6f2df5d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e588741-bf11-4da8-a1da-747aedd80e1e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f2df5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f2df5d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling 200 9ms","method":"POST","requestID":"6f2df5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/6e588741-bf11-4da8-a1da-747aedd80e1e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7","requestID":"e4131593227218ce69cb9a8b45cf9746"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4131593227218ce69cb9a8b45cf9746"} experiment-1 | {"level":"info","message":"DELETE /experiments/256033b8-909b-41bf-85ed-ce2c285c48b7 204 136ms","method":"DELETE","requestID":"e4131593227218ce69cb9a8b45cf9746","responseTime":136,"status":204,"url":"/experiments/256033b8-909b-41bf-85ed-ce2c285c48b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"2.161","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a75d6d259882e4cbd0c8f6af43442b80"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"8ffbf671baf596013932245ce0b5abed","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"8ffbf671baf596013932245ce0b5abed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"17d1d83b52b97f9603a2b45880799897","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"17d1d83b52b97f9603a2b45880799897"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.639","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40270f886f76ffdf6535b6a6ee819cfc"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.966409,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","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/a55471e3-e277-47d0-8602-85fc360eac75' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7be21810-c034-4b52-973f-8907815d469c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4183178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","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/6e588741-bf11-4da8-a1da-747aedd80e1e' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e278885-8ce9-4fc8-800d-2190d25b79df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4235537} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c05fa607-de01-4b9f-a700-c393ec801e56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.433603} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06e34e58-6227-45a8-bc07-aa6ea4d13cc3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4337227} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"34dbf9bd-04f2-41c7-beff-98c9eecc69d8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4379027} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57eb2e5be1feefaf11e90cbfb6dbfe60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"381cb21634f9850650f16a657f27ccad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"381cb21634f9850650f16a657f27ccad"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790117,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"381cb21634f9850650f16a657f27ccad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bd777405-a52d-4616-8dc2-b761f68afd92","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4653964} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d1bdde2-f243-4a8d-9572-da5fc368e3f8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.469492} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e02f5489-b126-48cc-9ed7-ac4f890aa615","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4797184} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22c46c09-2459-4b48-ae17-3cbdd88074b8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4800227} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"bfe052ac-410a-4059-9524-6a2783885d7e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.4838386} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"381cb21634f9850650f16a657f27ccad"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"381cb21634f9850650f16a657f27ccad"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"381cb21634f9850650f16a657f27ccad","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656524,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"85202fed-6484-42c0-8cca-94a3c27f2a2a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.9700508} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a53cd68-857a-487c-87ef-78b12bc1fa4c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.9753776} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"22626f4a-d368-4790-b2b8-87341ccb115c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541095.9874294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b"} device-1 | {"level":"info","message":"PATCH /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9 200 30ms","method":"PATCH","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b","responseTime":30,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"} gateway-1 | {"time_local":"10/Oct/2024:06:18:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f99a7a7e2afafaef30eae2bff7a87e2b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs","level":"info","message":"auth send jwt","requestID":"b2b43d9a21aea4a944597e6d3bee425b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2b43d9a21aea4a944597e6d3bee425b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b2b43d9a21aea4a944597e6d3bee425b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654027,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b2b43d9a21aea4a944597e6d3bee425b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541095,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5NX0.MnA5jMsqUy-pPGWvG70PtnsgVIF9lNCDh61jB9Feuxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2b43d9a21aea4a944597e6d3bee425b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b2b43d9a21aea4a944597e6d3bee425b"} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/websocket 200 18ms","method":"POST","requestID":"b2b43d9a21aea4a944597e6d3bee425b","responseTime":18,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b2b43d9a21aea4a944597e6d3bee425b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c765410da629c655c8969efc4fde979","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c765410da629c655c8969efc4fde979","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/99e78d11-b84e-449d-b9ba-5773de528f81/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":"3c765410da629c655c8969efc4fde979"} device-1 | {"level":"info","message":"OPTIONS /devices/99e78d11-b84e-449d-b9ba-5773de528f81/websocket 200 1ms","method":"OPTIONS","requestID":"3c765410da629c655c8969efc4fde979","responseTime":1,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"c218cc0be6425b98c3519eaa3c768bd2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c218cc0be6425b98c3519eaa3c768bd2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c218cc0be6425b98c3519eaa3c768bd2"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362081,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c218cc0be6425b98c3519eaa3c768bd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c218cc0be6425b98c3519eaa3c768bd2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c218cc0be6425b98c3519eaa3c768bd2"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/websocket 200 20ms","method":"POST","requestID":"c218cc0be6425b98c3519eaa3c768bd2","responseTime":20,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c218cc0be6425b98c3519eaa3c768bd2"} device-1 | {"level":"info","message":"device 'http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"300a896e3e43d1879ed89fe82ebb15c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"300a896e3e43d1879ed89fe82ebb15c2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/99e78d11-b84e-449d-b9ba-5773de528f81? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"300a896e3e43d1879ed89fe82ebb15c2"} device-1 | {"level":"info","message":"OPTIONS /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 1ms","method":"OPTIONS","requestID":"300a896e3e43d1879ed89fe82ebb15c2","responseTime":1,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.074173,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"0e01b421-93d4-495e-b190-0814039faeec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.5872808} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eae4aeff-5a3d-4636-8ede-1d0ca5b64894","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.594687} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"cbc632ad-c54a-49b1-8fad-7aa3fe148a58","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.605838} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/99e78d11-b84e-449d-b9ba-5773de528f81? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.039","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef"} device-1 | {"level":"info","message":"PATCH /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 35ms","method":"PATCH","requestID":"6fbfe84ef9c41648a4ecd66688f5ddef","responseTime":35,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"cbabb3b968e2a44693e3759a19708187"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbabb3b968e2a44693e3759a19708187","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbabb3b968e2a44693e3759a19708187"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179655,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"cbabb3b968e2a44693e3759a19708187","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbabb3b968e2a44693e3759a19708187","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"a141c08e-3d05-4f9f-a7a8-1d6a2b02391b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.631909} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cbabb3b968e2a44693e3759a19708187","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbabb3b968e2a44693e3759a19708187"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbabb3b968e2a44693e3759a19708187"} device-1 | {"level":"info","message":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? 200 17ms","method":"GET","requestID":"cbabb3b968e2a44693e3759a19708187","responseTime":17,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"5d732e36ce26080880edb4fc7556086e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d732e36ce26080880edb4fc7556086e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d732e36ce26080880edb4fc7556086e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264505,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5d732e36ce26080880edb4fc7556086e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5d732e36ce26080880edb4fc7556086e","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"206c63d0-8eb4-4fc4-8edc-7ebed22a7428","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.656744} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d732e36ce26080880edb4fc7556086e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d732e36ce26080880edb4fc7556086e"} device-1 | {"level":"info","message":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 17ms","method":"GET","requestID":"5d732e36ce26080880edb4fc7556086e","responseTime":17,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d732e36ce26080880edb4fc7556086e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.137189,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to run experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to book experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully booked experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636221,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919837,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"e08a15c8-771d-4a3a-9268-c4e6f45b0079","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.7155738} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"f3efb05e-860c-40ce-aa4b-d588e73d01e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.7167144} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? 200 18ms","method":"GET","requestID":"7096ad90-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 17ms","method":"GET","requestID":"7096fbb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Setting up experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully set up experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70a1aa10-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully running experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34628,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974898,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.333221,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2becd27b-d4ae-4848-ade2-903e11a57841","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.7847772} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a1aa10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"70a1aa10-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"2ea0b2a9-ecab-4401-a746-d117399553e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.7863662} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70a1aa10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"1de13d01-3020-48ed-8897-0f1f80ec2c31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.789637} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling 200 13ms","method":"POST","requestID":"70a1aa10-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70a41b10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} device-1 | {"level":"info","message":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 22ms","method":"GET","requestID":"70a15bf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? 200 25ms","method":"GET","requestID":"70a10dd0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70a50570-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07df87f3-c9f9-4d69-807c-afdd7eeeb263","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.7989275} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799085,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a41b10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","rebac_allow":false,"scope_allow":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":"70a41b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb86b772a-deea-42e6-8508-6682d259a0da#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb86b772a-deea-42e6-8508-6682d259a0da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d5c23145-06c5-487c-b66d-36185165b923","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.801101} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9727d458-96ac-4038-bca3-ba2ab0c7f6cc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8014572} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70a41b10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling 200 12ms","method":"POST","requestID":"70a41b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.9626,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0bebd2d5-e5be-40eb-95d7-5bd0f6edc491","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.80652} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a50570-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","rebac_allow":false,"scope_allow":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":"70a50570-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e","responseTime":146,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70a50570-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling 200 15ms","method":"POST","requestID":"70a50570-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70a79d80-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"bf73fc830ec7a86b686a1922a3bd0411"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf73fc830ec7a86b686a1922a3bd0411","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf73fc830ec7a86b686a1922a3bd0411"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198687,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bf73fc830ec7a86b686a1922a3bd0411","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf73fc830ec7a86b686a1922a3bd0411","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e05c796-93f5-4da4-b6e9-525707d666d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8217103} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.255132,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a79d80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70a79d80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"e9928918-6868-40eb-94cd-d774ea717187","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8251224} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70a79d80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling 200 9ms","method":"POST","requestID":"70a79d80-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf73fc830ec7a86b686a1922a3bd0411","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf73fc830ec7a86b686a1922a3bd0411"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.943055,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf73fc830ec7a86b686a1922a3bd0411"} device-1 | {"level":"info","message":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? 200 13ms","method":"GET","requestID":"bf73fc830ec7a86b686a1922a3bd0411","responseTime":13,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.809607,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"39763c1c87774fedbd843e7d4e1ebd9d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"39763c1c87774fedbd843e7d4e1ebd9d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.433559050Z"}]},"request_id":"6203dea9-8925-49a1-8c82-a718eeef6ac5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8352573} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"39763c1c87774fedbd843e7d4e1ebd9d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"456ff006-7250-490e-b247-4f6faf1a8607","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8361511} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691055,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"39763c1c87774fedbd843e7d4e1ebd9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"39763c1c87774fedbd843e7d4e1ebd9d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9? 200 13ms","method":"GET","requestID":"70a94b30-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 13ms","method":"GET","requestID":"70a97240-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Building connection plan","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} 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":"471ce6b9-c4b7-4bdf-a065-2c23167572c6"},{"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":"d3174f1a-c224-4f31-aa79-55acb5589c26"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b510a832-6c5e-4a02-a334-49e4717f406c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"70abbc30-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"70abbc30-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:15.479650105Z"}]},"request_id":"ee6fdfa4-b3d4-4905-aa76-72b2036bae67","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8443844} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"70abbc30-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39763c1c87774fedbd843e7d4e1ebd9d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede?id=8e1432a5-05c0-415e-9d0f-ec2efbf40aa9","ws://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede?id=676238a7-11f7-48f5-a983-9883aa1fb0e8"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"39763c1c87774fedbd843e7d4e1ebd9d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39763c1c87774fedbd843e7d4e1ebd9d"} device-1 | {"level":"info","message":"GET /devices/99e78d11-b84e-449d-b9ba-5773de528f81? 200 13ms","method":"GET","requestID":"39763c1c87774fedbd843e7d4e1ebd9d","responseTime":13,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.764407,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"351cf9c4-6dbb-49a3-8e05-549e6e1523ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.856221} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2017946b-cd7b-4140-9326-d7542e3123ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.8564339} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc'","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc'","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 21ms","method":"POST","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"70ac5870-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"70b18890-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"676238a7-11f7-48f5-a983-9883aa1fb0e8\" in room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\"","requestID":"70b18890-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"70b18890-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa10c1305726fa85e44069e61f24caa7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fa10c1305726fa85e44069e61f24caa7","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"70b1fdc0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8e1432a5-05c0-415e-9d0f-ec2efbf40aa9\" in room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\"","requestID":"70b1fdc0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"70b1fdc0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8e1432a5-05c0-415e-9d0f-ec2efbf40aa9\" in room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\"","requestID":"70b1fdc0-86cf-11ef-a631-87f051e9b6e3"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"}}},"level":"info","message":"received a callback","requestID":"fa10c1305726fa85e44069e61f24caa7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"fa10c1305726fa85e44069e61f24caa7","responseTime":10,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"fa10c1305726fa85e44069e61f24caa7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fa83a460b036ebbe28a2e34f8b7e3a8e"} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70b4e3f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33829827-f2ac-4d9e-9987-445756ed5982","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.90828} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.901733,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70b4e3f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70b4e3f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70b4e3f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling 200 18ms","method":"POST","requestID":"70b4e3f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3cdac34ea89d43f05fe640e60da578b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3cdac34ea89d43f05fe640e60da578b8","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70b7f130-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"}}},"level":"info","message":"received a callback","requestID":"3cdac34ea89d43f05fe640e60da578b8"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1526732-eda6-4568-842c-0b891642222e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.928053} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.619504,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70b7f130-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"70b8db90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70b7f130-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6a239fb-65f7-441d-ab86-6f6bc46d92dc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3309ba5a-73f0-41ea-960d-f0bd89f976b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.9330597} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.413496,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70b7f130-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling 200 11ms","method":"POST","requestID":"70b7f130-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70b8db90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc","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":"70b8db90-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"70b8db90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc 200 7ms","method":"GET","requestID":"70b8db90-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"3cdac34ea89d43f05fe640e60da578b8","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"3cdac34ea89d43f05fe640e60da578b8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70bc36f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb9bcfa1-7e4e-4200-a716-6c296a43b875","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.9563487} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.669288,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70bc36f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70bc36f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70bc36f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling 200 9ms","method":"POST","requestID":"70bc36f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70bde4a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b76bf7b-245f-44ff-b570-81011b5b44ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541097.966389} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.621227,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70bde4a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70bde4a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70bde4a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling 200 9ms","method":"POST","requestID":"70bde4a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs","level":"info","message":"auth send jwt","requestID":"d269f7a473b765f4241ab7609e214c4d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d269f7a473b765f4241ab7609e214c4d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b86b772a-deea-42e6-8508-6682d259a0da","requestID":"d269f7a473b765f4241ab7609e214c4d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.12074,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d269f7a473b765f4241ab7609e214c4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541097,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5N30.xyaOUOATHEoGl0zwJkXtQb1idEfBTcTaAQJo2wKByMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d269f7a473b765f4241ab7609e214c4d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b86b772a-deea-42e6-8508-6682d259a0da","requestID":"d269f7a473b765f4241ab7609e214c4d"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b86b772a-deea-42e6-8508-6682d259a0da HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d269f7a473b765f4241ab7609e214c4d"} experiment-1 | {"level":"info","message":"GET /experiments/b86b772a-deea-42e6-8508-6682d259a0da 200 14ms","method":"GET","requestID":"d269f7a473b765f4241ab7609e214c4d","responseTime":14,"status":200,"url":"/experiments/b86b772a-deea-42e6-8508-6682d259a0da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw","level":"info","message":"auth send jwt","requestID":"d6cb4a1c9b118c767d5eea7071546de0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d6cb4a1c9b118c767d5eea7071546de0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b86b772a-deea-42e6-8508-6682d259a0da","requestID":"d6cb4a1c9b118c767d5eea7071546de0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.825897,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d6cb4a1c9b118c767d5eea7071546de0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6cb4a1c9b118c767d5eea7071546de0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Attempting to finish experiment","requestID":"d6cb4a1c9b118c767d5eea7071546de0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.184508,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d4339859-89cd-4b3c-a111-db834b0fbede?id=676238a7-11f7-48f5-a983-9883aa1fb0e8 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0a214de0b6444df23eb19b23110d07dc"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"676238a7-11f7-48f5-a983-9883aa1fb0e8\" in room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"676238a7-11f7-48f5-a983-9883aa1fb0e8\" from room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d4339859-89cd-4b3c-a111-db834b0fbede?id=8e1432a5-05c0-415e-9d0f-ec2efbf40aa9 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.159","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2efce7583570fde76aa638949907819c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8e1432a5-05c0-415e-9d0f-ec2efbf40aa9\" in room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8e1432a5-05c0-415e-9d0f-ec2efbf40aa9\" from room \"http://localhost/rooms/d4339859-89cd-4b3c-a111-db834b0fbede\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc","device":"99e78d11-b84e-449d-b9ba-5773de528f81","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a05e84e1bc98e1f9ad04cbf8ec2c1eb9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a05e84e1bc98e1f9ad04cbf8ec2c1eb9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"010d3dacb813c17e92b58802fe190519","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"010d3dacb813c17e92b58802fe190519","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"}}},"level":"info","message":"received a callback","requestID":"a05e84e1bc98e1f9ad04cbf8ec2c1eb9"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"}}},"level":"info","message":"received a callback","requestID":"010d3dacb813c17e92b58802fe190519"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6a239fb-65f7-441d-ab86-6f6bc46d92dc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6a239fb-65f7-441d-ab86-6f6bc46d92dc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"0024406d-f3e3-4a99-8cd6-cd4bf3f6ffa3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.0517743} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62fed6df-2972-4762-9115-8350427bdab7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.0521195} device-1 | {"data":{"peerconnection":"f6a239fb-65f7-441d-ab86-6f6bc46d92dc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc 204 44ms","method":"DELETE","requestID":"70c75a80-86cf-11ef-b00e-2fb111b9dda5","responseTime":44,"status":204,"url":"/peerconnections/f6a239fb-65f7-441d-ab86-6f6bc46d92dc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b86b772a-deea-42e6-8508-6682d259a0da"},"level":"info","message":"Successfully finished experiment","requestID":"d6cb4a1c9b118c767d5eea7071546de0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70d1bac0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F99e78d11-b84e-449d-b9ba-5773de528f81","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2aa86a14-f73d-41a1-b67c-d0dce4cd1b28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.0979831} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.497402,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70d1bac0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/99e78d11-b84e-449d-b9ba-5773de528f81","object_type":"device","rebac_allow":false,"scope_allow":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":"70d1bac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70d1bac0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling 200 13ms","method":"POST","requestID":"70d1bac0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/99e78d11-b84e-449d-b9ba-5773de528f81/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70d42bc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb86b772a-deea-42e6-8508-6682d259a0da': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb86b772a-deea-42e6-8508-6682d259a0da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"27a58882-d5c8-4c1c-a364-bcedce6c7634","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.1098552} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f62d712-ba6f-4167-ad5c-af03f83da99b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.1104214} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"d6cb4a1c9b118c767d5eea7071546de0","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bb93dfc-7ba9-4f33-9d7f-365ed59f74d7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.1178746} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.474622,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"70d42bc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9","object_type":"device","rebac_allow":false,"scope_allow":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":"70d42bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70d42bc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling 200 17ms","method":"POST","requestID":"70d42bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b86b772a-deea-42e6-8508-6682d259a0da","requestID":"d6cb4a1c9b118c767d5eea7071546de0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b86b772a-deea-42e6-8508-6682d259a0da 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":"d6cb4a1c9b118c767d5eea7071546de0"} experiment-1 | {"level":"info","message":"DELETE /experiments/b86b772a-deea-42e6-8508-6682d259a0da 204 171ms","method":"DELETE","requestID":"d6cb4a1c9b118c767d5eea7071546de0","responseTime":171,"status":204,"url":"/experiments/b86b772a-deea-42e6-8508-6682d259a0da"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"2.167","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"74aa675ac6b187622847ea90e6d7165a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"a05e84e1bc98e1f9ad04cbf8ec2c1eb9","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"a05e84e1bc98e1f9ad04cbf8ec2c1eb9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"010d3dacb813c17e92b58802fe190519","responseTime":141,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw","level":"info","message":"auth send jwt","requestID":"ba57ec24c5a815a272cc26999faeb38d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ba57ec24c5a815a272cc26999faeb38d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba57ec24c5a815a272cc26999faeb38d"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"010d3dacb813c17e92b58802fe190519"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.074237,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.663","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b6f5c418292f65eff4b2a1882597d886"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8cb4c69d-1cbd-43f5-bf81-b6f188177bc9' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ba57ec24c5a815a272cc26999faeb38d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","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/99e78d11-b84e-449d-b9ba-5773de528f81' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fb34fc52-5cb5-411d-baba-69ada223efe4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2125483} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0ab25e7-7c8f-4b97-8f36-678e8d5e20de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.217922} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"289bbb31-01ae-41b0-af21-5b1eebdfcc71","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2287395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52a985d2-3dba-43b4-bdae-543407017a38","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2288184} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"c2834bce-501a-4cae-b313-88e859ebde26","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.233973} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba57ec24c5a815a272cc26999faeb38d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"ba57ec24c5a815a272cc26999faeb38d","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba57ec24c5a815a272cc26999faeb38d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw","level":"info","message":"auth send jwt","requestID":"7393acbf6aa15448f5057c4d0a009d89"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7393acbf6aa15448f5057c4d0a009d89"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.718488,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7393acbf6aa15448f5057c4d0a009d89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"65a51b4e-08ae-4378-a465-7e74f99d777a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2583926} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29707c2d-9a7a-426f-874c-98aed85e3ee1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2630806} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"34f27ae5-a1de-49a0-8327-999d62c85df5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2805882} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4791eb78-e81f-4505-bc1b-e9b67ed6d0af","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.280739} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"e4960de9-6753-4dba-99e3-bb76de964bc5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.2860565} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7393acbf6aa15448f5057c4d0a009d89"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"7393acbf6aa15448f5057c4d0a009d89","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7393acbf6aa15448f5057c4d0a009d89"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw","level":"info","message":"auth send jwt","requestID":"2117e025443d61f8467627cbb73d2a21"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2117e025443d61f8467627cbb73d2a21","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2117e025443d61f8467627cbb73d2a21"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257892,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2117e025443d61f8467627cbb73d2a21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2117e025443d61f8467627cbb73d2a21","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"f0f10305-1766-413a-81b4-cb9cbcd8517a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.7811718} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"2117e025443d61f8467627cbb73d2a21","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e34c6a43-4bc8-41e0-bfb8-9e38beda6918","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.7901995} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2117e025443d61f8467627cbb73d2a21","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"e26d7504-c2d8-41ee-977d-92e0cdf640b6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541098.8060446} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2117e025443d61f8467627cbb73d2a21","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2117e025443d61f8467627cbb73d2a21"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.052","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2117e025443d61f8467627cbb73d2a21"} device-1 | {"level":"info","message":"PATCH /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0 200 47ms","method":"PATCH","requestID":"2117e025443d61f8467627cbb73d2a21","responseTime":47,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw","level":"info","message":"auth send jwt","requestID":"db37d4e43cbcafb22e86582e63ca6c6c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db37d4e43cbcafb22e86582e63ca6c6c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"db37d4e43cbcafb22e86582e63ca6c6c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374256,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"db37d4e43cbcafb22e86582e63ca6c6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541098,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTA5OH0.-Sxk3ifPjYsipgXWQuYZvADgT0rdCKCcfET9KDvRuTw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db37d4e43cbcafb22e86582e63ca6c6c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"db37d4e43cbcafb22e86582e63ca6c6c"} gateway-1 | {"time_local":"10/Oct/2024:06:18:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"db37d4e43cbcafb22e86582e63ca6c6c"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/websocket 200 20ms","method":"POST","requestID":"db37d4e43cbcafb22e86582e63ca6c6c","responseTime":20,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7ccbea7d7d57a2a70c341c360281d8d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c7ccbea7d7d57a2a70c341c360281d8d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/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":"c7ccbea7d7d57a2a70c341c360281d8d"} device-1 | {"level":"info","message":"OPTIONS /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/websocket 200 1ms","method":"OPTIONS","requestID":"c7ccbea7d7d57a2a70c341c360281d8d","responseTime":1,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"bfac75940142a42ec95b266e3e1f3ce7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bfac75940142a42ec95b266e3e1f3ce7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bfac75940142a42ec95b266e3e1f3ce7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363903,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bfac75940142a42ec95b266e3e1f3ce7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bfac75940142a42ec95b266e3e1f3ce7","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bfac75940142a42ec95b266e3e1f3ce7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/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":"bfac75940142a42ec95b266e3e1f3ce7"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/websocket 200 26ms","method":"POST","requestID":"bfac75940142a42ec95b266e3e1f3ce7","responseTime":26,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d98a32e484e01591f94501ae4bdba1b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4d98a32e484e01591f94501ae4bdba1b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d98a32e484e01591f94501ae4bdba1b"} device-1 | {"level":"info","message":"OPTIONS /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 1ms","method":"OPTIONS","requestID":"4d98a32e484e01591f94501ae4bdba1b","responseTime":1,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"2175a75fbb50abfd0724e9d287cf97b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2175a75fbb50abfd0724e9d287cf97b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2175a75fbb50abfd0724e9d287cf97b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196304,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2175a75fbb50abfd0724e9d287cf97b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2175a75fbb50abfd0724e9d287cf97b7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"3f303e18-9398-4472-8a33-c6557e67ccbf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.3990335} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"2175a75fbb50abfd0724e9d287cf97b7","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1c9c52d-00d4-423d-a81c-6124beb7e50b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.4087331} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"2175a75fbb50abfd0724e9d287cf97b7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"1e655979-1287-41c6-8625-5e9c2e6edaec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.4181154} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2175a75fbb50abfd0724e9d287cf97b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2175a75fbb50abfd0724e9d287cf97b7"} device-1 | {"level":"info","message":"PATCH /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 39ms","method":"PATCH","requestID":"2175a75fbb50abfd0724e9d287cf97b7","responseTime":39,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2175a75fbb50abfd0724e9d287cf97b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.367584,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"60cba959-9c47-440a-8a43-2eeb7bd39334","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.448705} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7"} device-1 | {"level":"info","message":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? 200 18ms","method":"GET","requestID":"d7de376110d2eb3e4e3e1613e6c2f1b7","responseTime":18,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332517,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"07874c11-9031-4885-bf02-15712ba48b76","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.4741561} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba"} device-1 | {"level":"info","message":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 19ms","method":"GET","requestID":"2d6bb82b7f461c4e8ec4c8748cd4edba","responseTime":19,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91e2b3a6ef3a85e333b19830da5a09af","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.122688,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"91e2b3a6ef3a85e333b19830da5a09af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"91e2b3a6ef3a85e333b19830da5a09af","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to run experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to book experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully booked experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622899,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61278,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"b07ae0c0-f011-4e14-a1eb-6390f67adf6a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.539125} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"fbab45d8-2797-4de3-bc33-ed82d1e98dd3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.5401375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? 200 15ms","method":"GET","requestID":"7245bd20-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 15ms","method":"GET","requestID":"7245e430-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Setting up experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully set up experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"724e6fb0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully running experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664386,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.570432,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.112689,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b75a92b-02af-423f-a0cb-16f924f49e56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.5957024} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"724e6fb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","rebac_allow":false,"scope_allow":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":"724e6fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"724e6fb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling 200 14ms","method":"POST","requestID":"724e6fb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"21cd4b3e-cac3-4ba7-a082-e7a569c2aa6c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6018798} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7250e0b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"2888169b-6899-45cb-b10b-10cea1f630b7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6031408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? 200 22ms","method":"GET","requestID":"724e2190-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 23ms","method":"GET","requestID":"724e48a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e69f45d4-c64c-41f2-a527-1ed6c4327dd6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.608764} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.234598,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7250e0b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7250e0b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72521930-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdf1192c3-bbd9-475f-b168-7a497700816b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdf1192c3-bbd9-475f-b168-7a497700816b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a5235240-37ab-44a6-a2b3-6625e5a53b6e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6156483} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5b87114-63ce-4abe-98b0-c9776b76a45b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6159031} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"91e2b3a6ef3a85e333b19830da5a09af","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6eba33b-067c-4f36-9e23-18340e6939ba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.61933} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119243,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72521930-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"72521930-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7250e0b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling 200 21ms","method":"POST","requestID":"7250e0b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":21,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72521930-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling 200 15ms","method":"POST","requestID":"72521930-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"91e2b3a6ef3a85e333b19830da5a09af","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72568600-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"afb69edd71456d2e59942ff9cdd5162f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"afb69edd71456d2e59942ff9cdd5162f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afb69edd71456d2e59942ff9cdd5162f"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11e188f7-1097-4e2d-9d0b-40511101d6c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6462607} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.854712,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72568600-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"72568600-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72568600-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907769,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling 200 10ms","method":"POST","requestID":"72568600-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"afb69edd71456d2e59942ff9cdd5162f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"afb69edd71456d2e59942ff9cdd5162f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"cca090ff-935c-46c1-958d-a5b8247adec8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6554835} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"afb69edd71456d2e59942ff9cdd5162f","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657302,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712499,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afb69edd71456d2e59942ff9cdd5162f"} device-1 | {"level":"info","message":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? 200 17ms","method":"GET","requestID":"afb69edd71456d2e59942ff9cdd5162f","responseTime":17,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afb69edd71456d2e59942ff9cdd5162f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.228698663Z"}]},"request_id":"8a0cc12b-8344-47b8-b456-0c93783eea2a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6631668} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"e3d9e67b-f082-41c4-8416-ea66f80754b1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6641421} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0? 200 14ms","method":"GET","requestID":"725881d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 14ms","method":"GET","requestID":"7258a8e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Building connection plan","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} 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":"5363d292-aad1-4c7d-a661-1271aff5a2eb"},{"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":"8c7673d9-70cd-4c77-bc20-5583241d8af8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c714fd3c-027c-49ec-9353-099fb7117e37"}]},"level":"info","message":"Built pairwise service configurations","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"725b19e0-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"725b19e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"725b19e0-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742726,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d?id=5a6d2d86-4e7c-46f9-b48f-cf71865dfe22","ws://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d?id=1df8d245-662f-4874-888e-2e260c5829a4"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:18.280536764Z"}]},"request_id":"2ddb0bb7-87cd-4d61-a738-01935f236c86","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.676203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.701551,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a"} device-1 | {"level":"info","message":"GET /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5? 200 12ms","method":"GET","requestID":"bea2d6fbacd7b9a3b157bbe79243ba7a","responseTime":12,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"e7ddb29b-7c4c-48d2-9e57-ea9331dd8e06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6872196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12c5ca8e-6c67-4852-8869-b51b3c003729","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.6873653} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86'","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86'","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} 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":"725bb620-86cf-11ef-b00e-2fb111b9dda5","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"725bb620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"72610d50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1df8d245-662f-4874-888e-2e260c5829a4\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\"","requestID":"72610d50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"72610d50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"72618280-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1b7e61e9a1543d8de56bb91d064ba13","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\"","requestID":"72618280-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"72618280-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\"","requestID":"72618280-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c1b7e61e9a1543d8de56bb91d064ba13","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"}}},"level":"info","message":"received a callback","requestID":"c1b7e61e9a1543d8de56bb91d064ba13"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"c1b7e61e9a1543d8de56bb91d064ba13","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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":"c1b7e61e9a1543d8de56bb91d064ba13"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"91e2b3a6ef3a85e333b19830da5a09af"} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726441a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d4b3fcf3-6f56-4482-930c-ca89bfc236be","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.7345972} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.24592,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"726441a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726441a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726441a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling 200 18ms","method":"POST","requestID":"726441a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b93a0d1e37aebc81f7f5b1c2a13cc236","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b93a0d1e37aebc81f7f5b1c2a13cc236","responseTime":0,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72674ee0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"}}},"level":"info","message":"received a callback","requestID":"b93a0d1e37aebc81f7f5b1c2a13cc236"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc920e95-e8b6-46f5-aa80-e1af2fbae8fa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.7545788} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.372487,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"72681230-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72674ee0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72674ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72674ee0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling 200 9ms","method":"POST","requestID":"72674ee0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4484d44-3d13-41c5-9e4d-d751ac40c45e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.7610173} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.372429,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72681230-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","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":"72681230-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"72681230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86 200 10ms","method":"GET","requestID":"72681230-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"b93a0d1e37aebc81f7f5b1c2a13cc236","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"b93a0d1e37aebc81f7f5b1c2a13cc236"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726b94a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9170cfc8-8c57-493a-8ee9-3f06f88fa9f1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.7830248} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.415998,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"726b94a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"726b94a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726b94a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling 200 9ms","method":"POST","requestID":"726b94a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"726d4250-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a1595c2-e086-4fcb-95e0-176f7c32300d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.7936332} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.099627,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"726d4250-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726d4250-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"726d4250-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling 200 8ms","method":"POST","requestID":"726d4250-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"229cb0187f67779a7cbf4ea4d0b8596b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"229cb0187f67779a7cbf4ea4d0b8596b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/df1192c3-bbd9-475f-b168-7a497700816b","requestID":"229cb0187f67779a7cbf4ea4d0b8596b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.647385,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"229cb0187f67779a7cbf4ea4d0b8596b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"229cb0187f67779a7cbf4ea4d0b8596b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/df1192c3-bbd9-475f-b168-7a497700816b","requestID":"229cb0187f67779a7cbf4ea4d0b8596b"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/df1192c3-bbd9-475f-b168-7a497700816b HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"229cb0187f67779a7cbf4ea4d0b8596b"} experiment-1 | {"level":"info","message":"GET /experiments/df1192c3-bbd9-475f-b168-7a497700816b 200 9ms","method":"GET","requestID":"229cb0187f67779a7cbf4ea4d0b8596b","responseTime":9,"status":200,"url":"/experiments/df1192c3-bbd9-475f-b168-7a497700816b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eff2f20dda3875e22e32e509b7fafcfd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/df1192c3-bbd9-475f-b168-7a497700816b","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.239749,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"eff2f20dda3875e22e32e509b7fafcfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eff2f20dda3875e22e32e509b7fafcfd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Attempting to finish experiment","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.434159,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d?id=1df8d245-662f-4874-888e-2e260c5829a4 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3663f95208c299bfea895643e2f90f8c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1df8d245-662f-4874-888e-2e260c5829a4\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1df8d245-662f-4874-888e-2e260c5829a4\" from room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","device":"045636c9-e9de-4c7a-8338-b6cdbfca60c5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d?id=5a6d2d86-4e7c-46f9-b48f-cf71865dfe22 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.152","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"76725008b11a2e094bf2873ea315dcab"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" in room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5a6d2d86-4e7c-46f9-b48f-cf71865dfe22\" from room \"http://localhost/rooms/4804ef9e-03c5-4260-89d6-43c7b400ac9d\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa69a53bd2665f88c53e42225f988780","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fa69a53bd2665f88c53e42225f988780","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f44fdf-b1ac-4de1-84c2-4db06ba0ab86': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"780951b4-d983-4093-8bbd-567300a31231","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.8670597} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c416ff4e1765537a71fc9e79ea851f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a4c7604-2d5f-4a22-98de-ab844733d417","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.8674133} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"1c416ff4e1765537a71fc9e79ea851f2","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"}}},"level":"info","message":"received a callback","requestID":"fa69a53bd2665f88c53e42225f988780"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"}}},"level":"info","message":"received a callback","requestID":"1c416ff4e1765537a71fc9e79ea851f2"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86 204 35ms","method":"DELETE","requestID":"72766a10-86cf-11ef-b00e-2fb111b9dda5","responseTime":35,"status":204,"url":"/peerconnections/b2f44fdf-b1ac-4de1-84c2-4db06ba0ab86"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/df1192c3-bbd9-475f-b168-7a497700816b"},"level":"info","message":"Successfully finished experiment","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"727ece80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F045636c9-e9de-4c7a-8338-b6cdbfca60c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99e0628e-febc-42c3-974b-dce319ec7bb3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.9107559} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.528619,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"727ece80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"727ece80-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"727ece80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling 200 11ms","method":"POST","requestID":"727ece80-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/045636c9-e9de-4c7a-8338-b6cdbfca60c5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7280ca50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdf1192c3-bbd9-475f-b168-7a497700816b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdf1192c3-bbd9-475f-b168-7a497700816b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"a5cedb7f-0c15-4386-ac56-cc27e8278502","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.9187682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a0b99aa-cbd6-4e23-b259-944f5e311fae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.9189193} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"eff2f20dda3875e22e32e509b7fafcfd","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1bfb8db-42e6-4134-8fc1-40f8676c34a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87e68fd3-eceb-4e68-b7f6-cabe0d1ec27f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541100.920987} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.945272,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7280ca50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7280ca50-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7280ca50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling 200 7ms","method":"POST","requestID":"7280ca50-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/a1bfb8db-42e6-4134-8fc1-40f8676c34a0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/df1192c3-bbd9-475f-b168-7a497700816b","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/df1192c3-bbd9-475f-b168-7a497700816b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eff2f20dda3875e22e32e509b7fafcfd"} experiment-1 | {"level":"info","message":"DELETE /experiments/df1192c3-bbd9-475f-b168-7a497700816b 204 151ms","method":"DELETE","requestID":"eff2f20dda3875e22e32e509b7fafcfd","responseTime":151,"status":204,"url":"/experiments/df1192c3-bbd9-475f-b168-7a497700816b"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"2.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"71ed9214688f5916090b913706d2b0c6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"fa69a53bd2665f88c53e42225f988780","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"fa69a53bd2665f88c53e42225f988780"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"1c416ff4e1765537a71fc9e79ea851f2","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"1c416ff4e1765537a71fc9e79ea851f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU","level":"info","message":"auth send jwt","requestID":"8d8100bb582015c621ce665909c63bd0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8d8100bb582015c621ce665909c63bd0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8d8100bb582015c621ce665909c63bd0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.656","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4401be6b35576556c5101bc02d8f1e6d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.033075,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"8d8100bb582015c621ce665909c63bd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541100,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMH0.p7yaky0HeIe01g9kykHrfVcFjr4XY_ZS4c6azXeCyLU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","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/a1bfb8db-42e6-4134-8fc1-40f8676c34a0' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2a818d04-aa92-408f-ac03-cf46a2e13982","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.014588} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","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/045636c9-e9de-4c7a-8338-b6cdbfca60c5' 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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"516e8392-9251-4d27-81e0-53c5cd0ec69a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0195088} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"08fd1691-c32b-4cd1-85d6-43eb7212fde1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0297143} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c35e1b60-cc4c-4f12-94b7-b87fb7cc485d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.029788} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"5c3c9f2b-3b03-4c4c-864b-1df4c8ba0c03","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0356908} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8d8100bb582015c621ce665909c63bd0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8d8100bb582015c621ce665909c63bd0"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8d8100bb582015c621ce665909c63bd0","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"a2043779633243e211bb3d698d742052"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a2043779633243e211bb3d698d742052","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a2043779633243e211bb3d698d742052"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.861652,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a2043779633243e211bb3d698d742052","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"033c62bc-62f6-4e35-a2e1-7a64ea3db464","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.064305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"716f3f72-e098-480d-a9d9-40ba76a8ca70","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0686538} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c25d902a-5c5b-41b2-a721-3658242ac005","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0796683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c8862d0-6e77-4191-abdd-8de543df91ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0798736} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"f45c7949-0f56-4722-9b3a-46480eab6315","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.0837545} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a2043779633243e211bb3d698d742052"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a2043779633243e211bb3d698d742052"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a2043779633243e211bb3d698d742052","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"0b740911591029aaaeddb0d739c95d60"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0b740911591029aaaeddb0d739c95d60","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"f8e3c97d2e43e6e5102311929259f7d0"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0b740911591029aaaeddb0d739c95d60"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f8e3c97d2e43e6e5102311929259f7d0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f8e3c97d2e43e6e5102311929259f7d0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.594817,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0b740911591029aaaeddb0d739c95d60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b740911591029aaaeddb0d739c95d60","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.567271,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f8e3c97d2e43e6e5102311929259f7d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f8e3c97d2e43e6e5102311929259f7d0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"60998a83-5c88-4f4c-b421-b1ea83177eba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.5631242} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b740911591029aaaeddb0d739c95d60","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"6a2405d6-8bf5-47fa-ab4d-7eb530f51050","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.5636213} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f8e3c97d2e43e6e5102311929259f7d0","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5794f3d5-0f1e-4e36-840a-c17f63a374db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.567087} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0b740911591029aaaeddb0d739c95d60","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf74fbec-7b0e-478b-b16b-4d76c26a7a7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.5681117} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f8e3c97d2e43e6e5102311929259f7d0","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"a7ca77c6-4718-4415-b027-c930fd03a0a5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.571022} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f8e3c97d2e43e6e5102311929259f7d0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f8e3c97d2e43e6e5102311929259f7d0"} device-1 | {"level":"info","message":"PATCH /devices/89629440-3ead-4215-a619-86bd7c60a183 200 18ms","method":"PATCH","requestID":"f8e3c97d2e43e6e5102311929259f7d0","responseTime":18,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/89629440-3ead-4215-a619-86bd7c60a183 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f8e3c97d2e43e6e5102311929259f7d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"d05253e8e2b708a9506308dfb41a12bb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d05253e8e2b708a9506308dfb41a12bb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d05253e8e2b708a9506308dfb41a12bb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"06722c8e-6de1-447c-9faf-4da9cb9b853f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.582185} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0b740911591029aaaeddb0d739c95d60","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.715869,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0b740911591029aaaeddb0d739c95d60"} device-1 | {"level":"info","message":"PATCH /devices/59a4a889-7a77-4f48-8fca-da06f2557e90 200 34ms","method":"PATCH","requestID":"0b740911591029aaaeddb0d739c95d60","responseTime":34,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/59a4a889-7a77-4f48-8fca-da06f2557e90 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0b740911591029aaaeddb0d739c95d60"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d05253e8e2b708a9506308dfb41a12bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d05253e8e2b708a9506308dfb41a12bb","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"a6f5a5c716b763b60efe7a8208115cc0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a6f5a5c716b763b60efe7a8208115cc0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a6f5a5c716b763b60efe7a8208115cc0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.75862,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a6f5a5c716b763b60efe7a8208115cc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a6f5a5c716b763b60efe7a8208115cc0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d05253e8e2b708a9506308dfb41a12bb"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/websocket 200 20ms","method":"POST","requestID":"d05253e8e2b708a9506308dfb41a12bb","responseTime":20,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d05253e8e2b708a9506308dfb41a12bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a6f5a5c716b763b60efe7a8208115cc0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a6f5a5c716b763b60efe7a8208115cc0"} device-1 | {"level":"info","message":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/websocket 200 18ms","method":"POST","requestID":"a6f5a5c716b763b60efe7a8208115cc0","responseTime":18,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"3079775bc228cea22143798dc003d097"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3079775bc228cea22143798dc003d097","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3079775bc228cea22143798dc003d097"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.653421,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3079775bc228cea22143798dc003d097","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3079775bc228cea22143798dc003d097","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"d5c5dbce-a8ec-413a-9941-71a0e80e12f4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.6455824} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3079775bc228cea22143798dc003d097","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3079775bc228cea22143798dc003d097"} device-1 | {"level":"info","message":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? 200 13ms","method":"GET","requestID":"3079775bc228cea22143798dc003d097","responseTime":13,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3079775bc228cea22143798dc003d097"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"57da23fdb2b956be07a7299118ac2049"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"57da23fdb2b956be07a7299118ac2049","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57da23fdb2b956be07a7299118ac2049"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663501,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"57da23fdb2b956be07a7299118ac2049","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57da23fdb2b956be07a7299118ac2049","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"9ce22348-a4dc-4839-ba3b-c7e8bdfafcb5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.6686935} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57da23fdb2b956be07a7299118ac2049","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57da23fdb2b956be07a7299118ac2049"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57da23fdb2b956be07a7299118ac2049"} device-1 | {"level":"info","message":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? 200 16ms","method":"GET","requestID":"57da23fdb2b956be07a7299118ac2049","responseTime":16,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec51d11f2c76ea622c2662142dcca3e0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.249078,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ec51d11f2c76ea622c2662142dcca3e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec51d11f2c76ea622c2662142dcca3e0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to run experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to book experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully booked experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.311879,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869687,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"4908d6ac-0a97-4077-90d8-2bd49a53297c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.7336192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"449203b2-212d-43b8-8e6d-38127f5fced0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.7345834} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? 200 16ms","method":"GET","requestID":"72fb9fa0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? 200 16ms","method":"GET","requestID":"72fbc6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":16,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Setting up experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully set up experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73051580-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully running experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681806,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894051,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.087656,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d1d94a9-405c-4ff1-9e5d-05597d838ca8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.7901263} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73051580-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","rebac_allow":false,"scope_allow":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":"73051580-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"21a22e2b-db54-403d-ac8e-2cefa25d613e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.7938967} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"04a368a2-13d6-4741-809d-a9747d1d51ab","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.7973564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73051580-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling 200 15ms","method":"POST","requestID":"73051580-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7307d4a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? 200 22ms","method":"GET","requestID":"7304c760-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? 200 23ms","method":"GET","requestID":"7304ee70-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5d9a591-fb9c-481b-bc76-9434a0aa68d7#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5d9a591-fb9c-481b-bc76-9434a0aa68d7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"f83c19cd-2aff-4ae6-8aa6-2b4e561bc726","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8044522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fad9395-c140-4919-b18e-2a1a505aaf59","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8049119} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7308bf00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"ec51d11f2c76ea622c2662142dcca3e0","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04607864-817c-43fe-96ef-d084b8c7b504","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8092496} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.110708,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7307d4a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","rebac_allow":false,"scope_allow":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":"7307d4a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"799bc517-3418-4ddb-b899-c1d995baf3bd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.813021} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.740633,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 133ms","method":"POST","requestID":"ec51d11f2c76ea622c2662142dcca3e0","responseTime":133,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7308bf00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7308bf00-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7307d4a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/signaling 200 13ms","method":"POST","requestID":"7307d4a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7308bf00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling 200 9ms","method":"POST","requestID":"7308bf00-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"aafc593f754771236c5abcc2fb8fcaa4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aafc593f754771236c5abcc2fb8fcaa4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"730a6cb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aafc593f754771236c5abcc2fb8fcaa4"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03ca8dff-01be-420b-ac57-99170af8c471","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8238907} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636711,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"aafc593f754771236c5abcc2fb8fcaa4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aafc593f754771236c5abcc2fb8fcaa4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.210287,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"730a6cb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"730a6cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"730a6cb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/signaling 200 9ms","method":"POST","requestID":"730a6cb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"0e82c8e3-9b07-4e46-90b6-5c6f04968b55","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8285985} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aafc593f754771236c5abcc2fb8fcaa4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aafc593f754771236c5abcc2fb8fcaa4"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aafc593f754771236c5abcc2fb8fcaa4"} device-1 | {"level":"info","message":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? 200 14ms","method":"GET","requestID":"aafc593f754771236c5abcc2fb8fcaa4","responseTime":14,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.791865,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695874,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"fb2869b0157954548579f0d0281f3088"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fb2869b0157954548579f0d0281f3088","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb2869b0157954548579f0d0281f3088"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.029675333Z"}]},"request_id":"adb8545f-d39a-4159-8f27-8b65c37d9c3a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8390326} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"660d4255-3c60-4ea4-962a-50799505621f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8404655} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/59a4a889-7a77-4f48-8fca-da06f2557e90? 200 12ms","method":"GET","requestID":"730c4170-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704394,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"fb2869b0157954548579f0d0281f3088","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb2869b0157954548579f0d0281f3088","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? 200 15ms","method":"GET","requestID":"730c4171-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Building connection plan","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} 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":"fc536d8d-7ed2-436b-9315-70ef14cb0aa8"},{"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":"55a5e1ff-0bbf-458f-aa29-16684ba27f43"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6d12a588-05b4-40d7-98dd-bfe89aef0366"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:21.079635078Z"}]},"request_id":"a3aafc11-6ef7-4344-b933-f9ded361edc4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8488882} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fb2869b0157954548579f0d0281f3088","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"730f27a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"730f27a0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"POST /rooms 201 0ms","method":"POST","requestID":"730f27a0-86cf-11ef-a631-87f051e9b6e3","responseTime":0,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb2869b0157954548579f0d0281f3088"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b?id=515853a6-10a3-4aee-a6f0-e1432d93493b","ws://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b?id=b3529851-d4ad-4038-b812-40a2690f3361"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb2869b0157954548579f0d0281f3088"} device-1 | {"level":"info","message":"GET /devices/89629440-3ead-4215-a619-86bd7c60a183? 200 14ms","method":"GET","requestID":"fb2869b0157954548579f0d0281f3088","responseTime":14,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.701419,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"300fe16d-ab84-44ec-ae22-9bc4e79e34b3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8631763} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"829f72ff-c119-4734-bf44-9de5bd29f8f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.8633265} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72'","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72'","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"730f75c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"731430b0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"515853a6-10a3-4aee-a6f0-e1432d93493b\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\"","requestID":"731430b0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"731430b0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"731430b1-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b3529851-d4ad-4038-b812-40a2690f3361\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\"","requestID":"731430b1-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"731430b1-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b3529851-d4ad-4038-b812-40a2690f3361\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b3529851-d4ad-4038-b812-40a2690f3361\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"658696857f026c094600558829d1bdeb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"658696857f026c094600558829d1bdeb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"}}},"level":"info","message":"received a callback","requestID":"658696857f026c094600558829d1bdeb"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"658696857f026c094600558829d1bdeb","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"658696857f026c094600558829d1bdeb"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ec51d11f2c76ea622c2662142dcca3e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7318c490-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6012d89e-9f0d-43aa-bc0d-d460e4da6cf9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.9181335} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.747622,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7318c490-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7318c490-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7318c490-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6078422a9f5ec628dd07fa0a4af7856","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling 200 11ms","method":"POST","requestID":"7318c490-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b6078422a9f5ec628dd07fa0a4af7856","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"731ac060-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"}}},"level":"info","message":"received a callback","requestID":"b6078422a9f5ec628dd07fa0a4af7856"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"353c2a21-56fc-4562-b25e-5015dc5fef1e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.930655} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.476715,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"731b83b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"731ac060-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"731ac060-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"731ac060-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/signaling 200 9ms","method":"POST","requestID":"731ac060-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8eef79f9-55fe-457c-9c1b-db36ce03320d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.9368582} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.939416,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"731b83b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","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":"731b83b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"731b83b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72 200 9ms","method":"GET","requestID":"731b83b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"b6078422a9f5ec628dd07fa0a4af7856","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"b6078422a9f5ec628dd07fa0a4af7856"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"731f0620-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"138c4a0a-6a23-475f-a337-6a0a2777d6ca","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.9589062} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.145124,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"731f0620-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"731f0620-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"731f0620-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling 200 9ms","method":"POST","requestID":"731f0620-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73208cc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2d9eb97-6e6c-4193-93d4-5ac19c4a9a19","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541101.9688098} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.576689,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73208cc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73208cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73208cc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/signaling 200 8ms","method":"POST","requestID":"73208cc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA","level":"info","message":"auth send jwt","requestID":"c3981d5302fac8759d6a78455b181038"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c3981d5302fac8759d6a78455b181038","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","requestID":"c3981d5302fac8759d6a78455b181038"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.072424,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c3981d5302fac8759d6a78455b181038","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541101,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMX0.9q4Bll1CcK5SdCPsy500LXSyD2QYoSHlewbcQ9EF1eA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3981d5302fac8759d6a78455b181038","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","requestID":"c3981d5302fac8759d6a78455b181038"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3981d5302fac8759d6a78455b181038"} experiment-1 | {"level":"info","message":"GET /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7 200 12ms","method":"GET","requestID":"c3981d5302fac8759d6a78455b181038","responseTime":12,"status":200,"url":"/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"af8fdae64de64cc8b99db809e410d910"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af8fdae64de64cc8b99db809e410d910","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","requestID":"af8fdae64de64cc8b99db809e410d910"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.812482,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"af8fdae64de64cc8b99db809e410d910","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af8fdae64de64cc8b99db809e410d910","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Attempting to finish experiment","requestID":"af8fdae64de64cc8b99db809e410d910"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.846134,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6212a482-a3c0-4d44-aef3-580ce133f36b?id=515853a6-10a3-4aee-a6f0-e1432d93493b HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"de47adf8ba340e79e7f354dd69c04a0b"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6212a482-a3c0-4d44-aef3-580ce133f36b?id=b3529851-d4ad-4038-b812-40a2690f3361 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fac19026aeddb8d2b4a1abdc07f2a203"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"515853a6-10a3-4aee-a6f0-e1432d93493b\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"515853a6-10a3-4aee-a6f0-e1432d93493b\" from room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b3529851-d4ad-4038-b812-40a2690f3361\" in room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b3529851-d4ad-4038-b812-40a2690f3361\" from room \"http://localhost/rooms/6212a482-a3c0-4d44-aef3-580ce133f36b\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eca10f1cd9876ef15a6bcd0afdcdcd57","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eca10f1cd9876ef15a6bcd0afdcdcd57","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc0ab7fa3-1de7-4fdf-988f-4aac63ff3a72': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"5daace7d-5c69-4a10-88cc-dc34eeef84ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0322862} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10cb7ec2-c26d-4bc4-91a0-0510734912db","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0326664} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"15b8a1977bb4bcb86423f83a31623d24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"15b8a1977bb4bcb86423f83a31623d24","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"}}},"level":"info","message":"received a callback","requestID":"eca10f1cd9876ef15a6bcd0afdcdcd57"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"}}},"level":"info","message":"received a callback","requestID":"15b8a1977bb4bcb86423f83a31623d24"} device-1 | {"data":{"peerconnection":"c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72 204 32ms","method":"DELETE","requestID":"7328a310-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":204,"url":"/peerconnections/c0ab7fa3-1de7-4fdf-988f-4aac63ff3a72"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"},"level":"info","message":"Successfully finished experiment","requestID":"af8fdae64de64cc8b99db809e410d910"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"732fa7f0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59a4a889-7a77-4f48-8fca-da06f2557e90","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d4747ea-2533-4562-b15f-c007fd976fc9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0680017} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.360613,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"732fa7f0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/59a4a889-7a77-4f48-8fca-da06f2557e90","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"732fa7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"732fa7f0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling 200 9ms","method":"POST","requestID":"732fa7f0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/59a4a889-7a77-4f48-8fca-da06f2557e90/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"733155a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5d9a591-fb9c-481b-bc76-9434a0aa68d7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5d9a591-fb9c-481b-bc76-9434a0aa68d7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"8af02d23-59a6-4f9b-ba0e-8e4d93d6d442","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0766873} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b85833c-3cdb-427c-9a12-6289f6f84488","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0768151} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"af8fdae64de64cc8b99db809e410d910","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89629440-3ead-4215-a619-86bd7c60a183","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2692ffcd-885b-46c5-b68a-9b448e217c90","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.0795302} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.395957,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"733155a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"733155a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"733155a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/89629440-3ead-4215-a619-86bd7c60a183/signaling 200 10ms","method":"POST","requestID":"733155a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/89629440-3ead-4215-a619-86bd7c60a183/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7","requestID":"af8fdae64de64cc8b99db809e410d910"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af8fdae64de64cc8b99db809e410d910"} experiment-1 | {"level":"info","message":"DELETE /experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7 204 171ms","method":"DELETE","requestID":"af8fdae64de64cc8b99db809e410d910","responseTime":171,"status":204,"url":"/experiments/f5d9a591-fb9c-481b-bc76-9434a0aa68d7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.567","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"326696e9b3d53b0141b5698ad8249f55"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.577","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0d00c778ff04e5e63094477d4b61f2cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"eca10f1cd9876ef15a6bcd0afdcdcd57","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"eca10f1cd9876ef15a6bcd0afdcdcd57"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"15b8a1977bb4bcb86423f83a31623d24","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"15b8a1977bb4bcb86423f83a31623d24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"76d7cceda3ac3ead7f94fda452aab4db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76d7cceda3ac3ead7f94fda452aab4db","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"76d7cceda3ac3ead7f94fda452aab4db"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/89629440-3ead-4215-a619-86bd7c60a183' closed"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.079209,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"76d7cceda3ac3ead7f94fda452aab4db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","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/59a4a889-7a77-4f48-8fca-da06f2557e90' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7e9d7649-e2ca-4d88-8dd4-4c1a3d55fa37","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.210883} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9760379f-8f0d-4b34-ba34-28cad03c436d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2169378} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"ddd590da-8a43-4780-89b8-3439b767ce57","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2273076} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d192b5e-70e4-4e94-ad92-044b262c35fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2275538} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"6f820c6b-a918-4fec-ad51-11e1579267e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.232908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"76d7cceda3ac3ead7f94fda452aab4db"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76d7cceda3ac3ead7f94fda452aab4db"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"76d7cceda3ac3ead7f94fda452aab4db","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"7fe4d4da9a41c560129771bcac396a91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7fe4d4da9a41c560129771bcac396a91"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.776803,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7fe4d4da9a41c560129771bcac396a91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a640e2b0-d762-4906-b1ce-7d0135010187","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2575495} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a7fc4d8-b8f7-4c81-828d-0e18fd2d709f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2632003} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"bc7d70b6-bb9c-4bc6-b16d-9ef332af22ad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2794263} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0258b39f-5ecf-43ec-b9c8-9fb5741e80e7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2797189} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"898c6830-bbd1-4bd8-b531-e5a080375b18","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.2837443} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7fe4d4da9a41c560129771bcac396a91"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7fe4d4da9a41c560129771bcac396a91"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"7fe4d4da9a41c560129771bcac396a91","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"4d801374c214f6e59ee679fc815db6cd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d801374c214f6e59ee679fc815db6cd","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"5cbc756f7f3e75dfe047cd03c53b152c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4d801374c214f6e59ee679fc815db6cd"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5cbc756f7f3e75dfe047cd03c53b152c"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91082,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"4d801374c214f6e59ee679fc815db6cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d801374c214f6e59ee679fc815db6cd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.347629,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"5cbc756f7f3e75dfe047cd03c53b152c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"f1715633-31ff-46e5-ab6a-b32ad47ebca1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7621222} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d801374c214f6e59ee679fc815db6cd","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"857b9b42-12ac-4732-b24d-e5607fa429e6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7628477} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f1a82a0-eb8c-4608-992d-7b73927b3e5f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7671363} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4d801374c214f6e59ee679fc815db6cd","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43c19058-bcae-4ccb-946b-d7f232134d5c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7681518} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"693a2f91-d072-40fd-908f-8b210fdb14dc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7720182} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5cbc756f7f3e75dfe047cd03c53b152c"} device-1 | {"level":"info","message":"PATCH /devices/aa057c70-42cb-4714-9adc-9a779a51c17f 200 22ms","method":"PATCH","requestID":"5cbc756f7f3e75dfe047cd03c53b152c","responseTime":22,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/aa057c70-42cb-4714-9adc-9a779a51c17f HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5cbc756f7f3e75dfe047cd03c53b152c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"2dd1ad38120ee717009d4215588ec005"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2dd1ad38120ee717009d4215588ec005","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2dd1ad38120ee717009d4215588ec005"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770079,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"2dd1ad38120ee717009d4215588ec005","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2dd1ad38120ee717009d4215588ec005","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"a4d78902-63aa-4c94-a774-6a2ddfcf9f82","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.7835116} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d801374c214f6e59ee679fc815db6cd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4d801374c214f6e59ee679fc815db6cd"} device-1 | {"level":"info","message":"PATCH /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae 200 35ms","method":"PATCH","requestID":"4d801374c214f6e59ee679fc815db6cd","responseTime":35,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4d801374c214f6e59ee679fc815db6cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"d950714daad006756685887f1d9157b7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d950714daad006756685887f1d9157b7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d950714daad006756685887f1d9157b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118793,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d950714daad006756685887f1d9157b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d950714daad006756685887f1d9157b7","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2dd1ad38120ee717009d4215588ec005"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"2dd1ad38120ee717009d4215588ec005"} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/websocket 200 17ms","method":"POST","requestID":"2dd1ad38120ee717009d4215588ec005","responseTime":17,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d950714daad006756685887f1d9157b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d950714daad006756685887f1d9157b7"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/websocket 200 14ms","method":"POST","requestID":"d950714daad006756685887f1d9157b7","responseTime":14,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"b91681702ffb39ff10264d21cc84a7ab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b91681702ffb39ff10264d21cc84a7ab","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b91681702ffb39ff10264d21cc84a7ab"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891828,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b91681702ffb39ff10264d21cc84a7ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b91681702ffb39ff10264d21cc84a7ab","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"cd439244-fb78-4840-8326-626164bb7e78","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.8394537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b91681702ffb39ff10264d21cc84a7ab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b91681702ffb39ff10264d21cc84a7ab"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b91681702ffb39ff10264d21cc84a7ab"} device-1 | {"level":"info","message":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? 200 14ms","method":"GET","requestID":"b91681702ffb39ff10264d21cc84a7ab","responseTime":14,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61438,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ba2d501c2c2f44eb213e96e4acf9a59f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"646c4180-5a2a-4488-997a-e94aed2926eb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.8588617} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f"} gateway-1 | {"time_local":"10/Oct/2024:06:18:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f"} device-1 | {"level":"info","message":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? 200 15ms","method":"GET","requestID":"ba2d501c2c2f44eb213e96e4acf9a59f","responseTime":15,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs","level":"info","message":"auth send jwt","requestID":"d99fdb7896f65b3f310171f2778d5084"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d99fdb7896f65b3f310171f2778d5084","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d99fdb7896f65b3f310171f2778d5084"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.053549,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d99fdb7896f65b3f310171f2778d5084","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d99fdb7896f65b3f310171f2778d5084","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to run experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to book experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully booked experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656148,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.529741,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"507f9ee2-5fa1-44fe-ac45-80c2291a18e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9213967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"9c3c6f42-c68b-4461-96ac-e5ebb7a798f3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9223876} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? 200 15ms","method":"GET","requestID":"73b10cf0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? 200 15ms","method":"GET","requestID":"73b13400-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Setting up experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully set up experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully running experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73ba5bc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.085192,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868306,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd17498a-ee2d-4c0c-879d-f821738b7f5b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.983362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"7514c6a2-5e9f-43c4-931d-9f2e01e6ecbb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9843335} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.674111,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73ba5bc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","rebac_allow":false,"scope_allow":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":"73ba5bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"27e87888-4d8d-45b2-be68-ba41fdf7dbcc","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9855022} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73ba5bc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling 200 19ms","method":"POST","requestID":"73ba5bc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? 200 24ms","method":"GET","requestID":"73b9bf80-86cf-11ef-b00e-2fb111b9dda5","responseTime":24,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73bd9010-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? 200 25ms","method":"GET","requestID":"73ba0da0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e044401-af95-4ba8-a320-a5f2bf9f7849#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e044401-af95-4ba8-a320-a5f2bf9f7849","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"4114a992-80a8-4dbd-9095-d0abdd7bbd90","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9965312} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"706fc29d-d8f6-4161-a03f-a2c06cbb44d6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9968624} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73be5360-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"d99fdb7896f65b3f310171f2778d5084","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d7ad2fd-d055-4950-8026-6ce1f7941629","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541102.9997034} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.717637,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73bd9010-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"73bd9010-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de8550a8-1210-4b33-83a6-28a92b18447a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.003482} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.461037,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73be5360-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","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":"73bd9010-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling 200 12ms","method":"POST","requestID":"73bd9010-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73be5360-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"d99fdb7896f65b3f310171f2778d5084","responseTime":137,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73be5360-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling 200 9ms","method":"POST","requestID":"73be5360-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73c00110-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"ec032d56c90a9ca2d4c36c9a00b90766"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ec032d56c90a9ca2d4c36c9a00b90766","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec032d56c90a9ca2d4c36c9a00b90766"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619869,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ec032d56c90a9ca2d4c36c9a00b90766","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec032d56c90a9ca2d4c36c9a00b90766","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea2d5206-9691-46c7-948c-4ac610013665","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.0148885} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.587936,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73c00110-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"73c00110-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73c00110-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"66a27308-c436-4483-8c74-0a66bfb2886c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.019077} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling 200 10ms","method":"POST","requestID":"73c00110-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec032d56c90a9ca2d4c36c9a00b90766","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec032d56c90a9ca2d4c36c9a00b90766"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec032d56c90a9ca2d4c36c9a00b90766"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701059,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} device-1 | {"level":"info","message":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? 200 15ms","method":"GET","requestID":"ec032d56c90a9ca2d4c36c9a00b90766","responseTime":15,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae?"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678828,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"b3e849b531b5c6122f5a4af127e32d69"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b3e849b531b5c6122f5a4af127e32d69","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3e849b531b5c6122f5a4af127e32d69"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.227270840Z"}]},"request_id":"3361484a-8d38-4dda-8fd5-d8363aaee1ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.0299287} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"f43e91f6-39ae-4b77-bebb-668d6b3b874a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.0327945} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae? 200 15ms","method":"GET","requestID":"73c1d5d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83452,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b3e849b531b5c6122f5a4af127e32d69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3e849b531b5c6122f5a4af127e32d69","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? 200 20ms","method":"GET","requestID":"73c1fce0-86cf-11ef-b00e-2fb111b9dda5","responseTime":20,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Building connection plan","requestID":"d99fdb7896f65b3f310171f2778d5084"} 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":"81654879-7c88-4a07-8cf8-4d69d75b9526"},{"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":"937bbdc9-dfd9-4581-a7f3-2f740371b66f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f8d5671b-0a59-48b4-bdb9-39303d9b1418"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d99fdb7896f65b3f310171f2778d5084"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:22.279391923Z"}]},"request_id":"ddd2d27d-3ce3-4687-8d55-7b46563f86ed","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.0440834} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"73c57f50-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"73c57f50-86cf-11ef-a631-87f051e9b6e3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3e849b531b5c6122f5a4af127e32d69","responseTime":4,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"73c57f50-86cf-11ef-a631-87f051e9b6e3","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6?id=2c08ee98-f6b9-4d4e-86b7-6e1196c107e4","ws://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6?id=37d332c7-3284-49da-b23d-84cceae5503b"]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3e849b531b5c6122f5a4af127e32d69"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3e849b531b5c6122f5a4af127e32d69"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} device-1 | {"level":"info","message":"GET /devices/aa057c70-42cb-4714-9adc-9a779a51c17f? 200 27ms","method":"GET","requestID":"b3e849b531b5c6122f5a4af127e32d69","responseTime":27,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.936362,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541102,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwMn0.cpWEbb6YaIyxvKoc0lelZg-vsp-OOVIA-kcgXWwhrzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"a7a058a5-3882-4a69-8fe0-b92056e2dd63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.0663114} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6b992a2-8e94-4291-9b23-de2b4f1e82aa","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.066495} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9'","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9'","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"73c6b7d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"73cbc0e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"37d332c7-3284-49da-b23d-84cceae5503b\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\"","requestID":"73cbc0e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"73cbc0e0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"73cbe7f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\"","requestID":"73cbe7f0-86cf-11ef-a631-87f051e9b6e3"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"73cbe7f0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ea05b722b997b43c5e0a306fdf1a38db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\"","requestID":"73cbe7f0-86cf-11ef-a631-87f051e9b6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ea05b722b997b43c5e0a306fdf1a38db","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"}}},"level":"info","message":"received a callback","requestID":"ea05b722b997b43c5e0a306fdf1a38db"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"ea05b722b997b43c5e0a306fdf1a38db","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"ea05b722b997b43c5e0a306fdf1a38db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d99fdb7896f65b3f310171f2778d5084"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73cef530-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"391aff10-38e0-4b3f-9625-796a50213c3e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.1109378} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.262049,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73cef530-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73cef530-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73cef530-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling 200 18ms","method":"POST","requestID":"73cef530-86cf-11ef-b00e-2fb111b9dda5","responseTime":18,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03df4837a2a39c3f4c69ba330d949c7d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"03df4837a2a39c3f4c69ba330d949c7d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73d20270-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"}}},"level":"info","message":"received a callback","requestID":"03df4837a2a39c3f4c69ba330d949c7d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c420252d-6237-4cd1-a106-40129bbde9cd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.1310382} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.403167,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"73d29eb0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d20270-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73d20270-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"765dadfe-cf4f-40d0-a7be-442828501491","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.1361504} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.752569,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73d20270-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling 200 10ms","method":"POST","requestID":"73d20270-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d29eb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","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":"73d29eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"73d29eb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9 200 10ms","method":"GET","requestID":"73d29eb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"03df4837a2a39c3f4c69ba330d949c7d","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"03df4837a2a39c3f4c69ba330d949c7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73d64830-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40a0c8f4-e1f7-4d4a-bcca-59433874b2e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.1602848} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.990055,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d64830-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73d64830-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73d64830-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling 200 9ms","method":"POST","requestID":"73d64830-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73d7f5e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45754fac-e086-4972-bbfe-e404ab8b2224","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.170681} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.369023,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73d7f5e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73d7f5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73d7f5e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling 200 8ms","method":"POST","requestID":"73d7f5e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.340873,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f6c25985ceb6cb3a468b0323da8ed5ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec"} experiment-1 | {"level":"info","message":"GET /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849 200 11ms","method":"GET","requestID":"f6c25985ceb6cb3a468b0323da8ed5ec","responseTime":11,"status":200,"url":"/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"d6b5254eba18bb93697e24a551ceb978"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6b5254eba18bb93697e24a551ceb978","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","requestID":"d6b5254eba18bb93697e24a551ceb978"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.622594,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"d6b5254eba18bb93697e24a551ceb978","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6b5254eba18bb93697e24a551ceb978","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Attempting to finish experiment","requestID":"d6b5254eba18bb93697e24a551ceb978"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.236582,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6?id=37d332c7-3284-49da-b23d-84cceae5503b HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"6d5d918b850471a153c7dbc07a0ceebc"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6?id=2c08ee98-f6b9-4d4e-86b7-6e1196c107e4 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5ff83224a157c04799a9dd5a72220a7e"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"37d332c7-3284-49da-b23d-84cceae5503b\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"37d332c7-3284-49da-b23d-84cceae5503b\" from room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" in room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2c08ee98-f6b9-4d4e-86b7-6e1196c107e4\" from room \"http://localhost/rooms/31cb97bf-92f2-4f4e-ba18-6c0999c144f6\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23bad53e9203d995167f808343c6fa17","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"23bad53e9203d995167f808343c6fa17","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b3d74aae3d64383101f77382f6264e80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"}}},"level":"info","message":"received a callback","requestID":"23bad53e9203d995167f808343c6fa17"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b3d74aae3d64383101f77382f6264e80","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F25c64cd6-a502-4556-be3d-6c7b2b6d6fe9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"7edb519f-516c-440f-a159-76600c8db26b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.2431831} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"}}},"level":"info","message":"received a callback","requestID":"b3d74aae3d64383101f77382f6264e80"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58d1b900-54a3-4c88-bcfd-08102c30f7ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.243373} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"25c64cd6-a502-4556-be3d-6c7b2b6d6fe9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9 204 36ms","method":"DELETE","requestID":"73e05a50-86cf-11ef-b00e-2fb111b9dda5","responseTime":36,"status":204,"url":"/peerconnections/25c64cd6-a502-4556-be3d-6c7b2b6d6fe9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"},"level":"info","message":"Successfully finished experiment","requestID":"d6b5254eba18bb93697e24a551ceb978"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73e95b00-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa057c70-42cb-4714-9adc-9a779a51c17f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1bdb80e3-f18a-4ef2-baaa-4dfc936b4747","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.286725} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.680973,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73e95b00-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa057c70-42cb-4714-9adc-9a779a51c17f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"73e95b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73e95b00-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling 200 12ms","method":"POST","requestID":"73e95b00-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/aa057c70-42cb-4714-9adc-9a779a51c17f/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e044401-af95-4ba8-a320-a5f2bf9f7849': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e044401-af95-4ba8-a320-a5f2bf9f7849","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"f56192b5-b73d-4202-9689-7c889e6c2b65","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.2938228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6324f63-20cd-4684-aa3b-c91bfe4c94b9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.2940378} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73eb7de0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d6b5254eba18bb93697e24a551ceb978","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc37d3cde-39c0-44c9-8539-bee0c2a9ecae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01ef1407-bc0b-4cf8-a84b-c9e23bc41175","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.2999303} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.778272,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"73eb7de0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"73eb7de0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73eb7de0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling 200 10ms","method":"POST","requestID":"73eb7de0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849","requestID":"d6b5254eba18bb93697e24a551ceb978"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849 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":"d6b5254eba18bb93697e24a551ceb978"} experiment-1 | {"level":"info","message":"DELETE /experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849 204 141ms","method":"DELETE","requestID":"d6b5254eba18bb93697e24a551ceb978","responseTime":141,"status":204,"url":"/experiments/8e044401-af95-4ba8-a320-a5f2bf9f7849"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.554","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d870cb28b43923633e6242f956588211"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.546","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c22b7d60259b0142d3f9b862a3879d07"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"23bad53e9203d995167f808343c6fa17","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"23bad53e9203d995167f808343c6fa17"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"dd2f117d81c167ded477ca0e8d3b8239"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd2f117d81c167ded477ca0e8d3b8239","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"b3d74aae3d64383101f77382f6264e80","responseTime":114,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c37d3cde-39c0-44c9-8539-bee0c2a9ecae' closed"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"b3d74aae3d64383101f77382f6264e80"} device-1 | {"level":"info","message":"postDevices called","requestID":"dd2f117d81c167ded477ca0e8d3b8239"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.915306,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"dd2f117d81c167ded477ca0e8d3b8239","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","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/aa057c70-42cb-4714-9adc-9a779a51c17f' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dcd6b0ce-bb37-49be-8216-788e3e36eff4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.3772378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adbd95ab-dd3d-4cfa-be47-d755e1c903ee","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.382654} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"7b428226-4283-4607-ada5-58a28aacb4de","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.3921099} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f72846f-fbf5-4812-81df-21b8cd97769a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.3922253} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"a425469c-4cd8-4543-bc13-f42316c3900a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.3966882} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dd2f117d81c167ded477ca0e8d3b8239"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd2f117d81c167ded477ca0e8d3b8239"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"dd2f117d81c167ded477ca0e8d3b8239","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw","level":"info","message":"auth send jwt","requestID":"1643bdde9f3fe506f8c906282763af73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1643bdde9f3fe506f8c906282763af73","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1643bdde9f3fe506f8c906282763af73"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.89003,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"1643bdde9f3fe506f8c906282763af73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541103,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwM30.uSqPvI_W4o-bkDTBuQDMs1b7QvMM1bM_GzdagzdGSMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"736b253a-a255-4534-b9aa-c2aea562a482","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.4197767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91798047-e177-4d1b-86a7-ccec9119dac7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.4263897} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"0b49e372-9a7c-4951-865b-1f22403332da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.4424124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73013182-09b4-41d0-b595-2743acf5c1cb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.442715} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"4d0e85be-0581-48f8-83d7-18689c5b3efb","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541103.4473839} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1643bdde9f3fe506f8c906282763af73"} gateway-1 | {"time_local":"10/Oct/2024:06:18:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1643bdde9f3fe506f8c906282763af73"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"1643bdde9f3fe506f8c906282763af73","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93e9d4c0b67fcb351d1efe5a149e2091","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"93e9d4c0b67fcb351d1efe5a149e2091","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3cca56180524986fda3200e78449f35b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3cca56180524986fda3200e78449f35b","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/55e27d8c-ad54-4802-a171-a48def9daee0/websocket 200 1ms","method":"OPTIONS","requestID":"93e9d4c0b67fcb351d1efe5a149e2091","responseTime":1,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/55e27d8c-ad54-4802-a171-a48def9daee0/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":"93e9d4c0b67fcb351d1efe5a149e2091"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/55a9451f-a255-4600-95be-6f78efbbd866/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":"3cca56180524986fda3200e78449f35b"} device-1 | {"level":"info","message":"OPTIONS /devices/55a9451f-a255-4600-95be-6f78efbbd866/websocket 200 1ms","method":"OPTIONS","requestID":"3cca56180524986fda3200e78449f35b","responseTime":1,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"23cae8db66abeaf2b29bba48d9fd961f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"23cae8db66abeaf2b29bba48d9fd961f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"23cae8db66abeaf2b29bba48d9fd961f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"0d033ec088e87c790f35bc8b8166a60b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0d033ec088e87c790f35bc8b8166a60b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0d033ec088e87c790f35bc8b8166a60b"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.103913,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"23cae8db66abeaf2b29bba48d9fd961f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23cae8db66abeaf2b29bba48d9fd961f","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251671,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"0d033ec088e87c790f35bc8b8166a60b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d033ec088e87c790f35bc8b8166a60b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0d033ec088e87c790f35bc8b8166a60b"} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/websocket 200 13ms","method":"POST","requestID":"0d033ec088e87c790f35bc8b8166a60b","responseTime":13,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/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":"0d033ec088e87c790f35bc8b8166a60b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"23cae8db66abeaf2b29bba48d9fd961f"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/websocket 200 23ms","method":"POST","requestID":"23cae8db66abeaf2b29bba48d9fd961f","responseTime":23,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/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":"23cae8db66abeaf2b29bba48d9fd961f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"106784123436d3f92ba587ccab62207d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"106784123436d3f92ba587ccab62207d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/55a9451f-a255-4600-95be-6f78efbbd866? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"106784123436d3f92ba587ccab62207d"} device-1 | {"level":"info","message":"OPTIONS /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 0ms","method":"OPTIONS","requestID":"106784123436d3f92ba587ccab62207d","responseTime":0,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bac7865e911cc838c99ef2195dccd8fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bac7865e911cc838c99ef2195dccd8fb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/55e27d8c-ad54-4802-a171-a48def9daee0? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bac7865e911cc838c99ef2195dccd8fb"} device-1 | {"level":"info","message":"OPTIONS /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 1ms","method":"OPTIONS","requestID":"bac7865e911cc838c99ef2195dccd8fb","responseTime":1,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225129,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"898055e3-6822-43af-94b7-e5005750c47c","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.5154326} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294279,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c6291f8-bfb6-45a9-9b64-df7355c08dd5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.522507} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"7f264869-83c2-49c5-816e-869677c5e3a9","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.5265524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88b5fe9f-2c55-47c3-8ac7-01da7e9046da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.532016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"dd952342-e10f-41de-b855-fff33d8fd4ec","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.5330794} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1"} device-1 | {"level":"info","message":"PATCH /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 33ms","method":"PATCH","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1","responseTime":33,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/55a9451f-a255-4600-95be-6f78efbbd866? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.038","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"66014a6ed7527f83141c9a3ca1b6a4b1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"d0d9ce6a-5be2-477a-9da2-1f7bcee4ba34","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.5430293} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef"} device-1 | {"level":"info","message":"PATCH /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 32ms","method":"PATCH","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef","responseTime":32,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/55e27d8c-ad54-4802-a171-a48def9daee0? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f2d31ecc193a67afd0fabfa91fb3f9ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"abe4b5c82eaa27c20adc0dca17e37465"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"abe4b5c82eaa27c20adc0dca17e37465","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"abe4b5c82eaa27c20adc0dca17e37465"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.816287,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"abe4b5c82eaa27c20adc0dca17e37465","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"abe4b5c82eaa27c20adc0dca17e37465","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"d071a455-2c5f-4e4c-b48c-3dc882dbab44","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.5659218} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"abe4b5c82eaa27c20adc0dca17e37465","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"abe4b5c82eaa27c20adc0dca17e37465"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abe4b5c82eaa27c20adc0dca17e37465"} device-1 | {"level":"info","message":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 14ms","method":"GET","requestID":"abe4b5c82eaa27c20adc0dca17e37465","responseTime":14,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"ad7d0c1d7580622eeb98572fa0480806"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad7d0c1d7580622eeb98572fa0480806","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad7d0c1d7580622eeb98572fa0480806"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234596,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"ad7d0c1d7580622eeb98572fa0480806","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad7d0c1d7580622eeb98572fa0480806","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"eb89e406-299c-477e-b2d2-e34ba4997ea3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.587378} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad7d0c1d7580622eeb98572fa0480806","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad7d0c1d7580622eeb98572fa0480806"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad7d0c1d7580622eeb98572fa0480806"} device-1 | {"level":"info","message":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 14ms","method":"GET","requestID":"ad7d0c1d7580622eeb98572fa0480806","responseTime":14,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"c6f4206df224fcdbcff95a72db112506"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c6f4206df224fcdbcff95a72db112506","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c6f4206df224fcdbcff95a72db112506"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.72377,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c6f4206df224fcdbcff95a72db112506","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6f4206df224fcdbcff95a72db112506","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to run experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to book experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully booked experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.371499,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.462018,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"996e8c97-db76-4d93-97c4-a1cfd8a852a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.6588202} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"42440493-a041-47ac-aba2-94d3822b7e6b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.660782} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 25ms","method":"GET","requestID":"7551ebb0-86cf-11ef-b00e-2fb111b9dda5","responseTime":25,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 23ms","method":"GET","requestID":"755239d0-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Setting up experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully set up experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully running experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"755d3650-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.212191,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145572,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.673887,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c261bbe-f241-4386-8e8f-592a1ccd1d54","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.727418} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"755d3650-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","rebac_allow":false,"scope_allow":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":"755d3650-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"debc960d-1b33-45a5-bf51-56218c960e06","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.729551} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"b1b74a12-91f1-4317-a012-c0ee5c0f872a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7314777} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"755d3650-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling 200 23ms","method":"POST","requestID":"755d3650-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 30ms","method":"GET","requestID":"755c7300-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75612df0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 32ms","method":"GET","requestID":"755cc120-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd7c71ce-069c-4050-b1ce-dce7471679d0#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd7c71ce-069c-4050-b1ce-dce7471679d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d083eea0-c2ec-4957-a149-32914e8bf1e3","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7459254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65f135e6-df62-449a-b808-d84d6b8be006","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7464075} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75621850-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"c6f4206df224fcdbcff95a72db112506","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db417779-80c8-42f2-91db-b7f1b2941bba","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7503374} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.134525,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75612df0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","rebac_allow":false,"scope_allow":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":"75612df0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b1406e0-b089-4619-8c0c-0952591ab144","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.755862} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.858958,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75612df0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75621850-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling 200 15ms","method":"POST","requestID":"75612df0-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"c6f4206df224fcdbcff95a72db112506","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6f4206df224fcdbcff95a72db112506"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"75621850-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75621850-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling 200 13ms","method":"POST","requestID":"75621850-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"51e58121457da54c852eb1b83b4485de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"51e58121457da54c852eb1b83b4485de","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75646240-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51e58121457da54c852eb1b83b4485de"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b59a3b6-9cec-4d8a-a64a-8eee507c43ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7709622} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192398,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.58095,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"51e58121457da54c852eb1b83b4485de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"51e58121457da54c852eb1b83b4485de","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75646240-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","rebac_allow":false,"scope_allow":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":"75646240-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75646240-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"a403beb2-65b5-4bef-8c87-aa1d6892ae33","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7764754} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling 200 13ms","method":"POST","requestID":"75646240-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51e58121457da54c852eb1b83b4485de","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"51e58121457da54c852eb1b83b4485de"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51e58121457da54c852eb1b83b4485de"} device-1 | {"level":"info","message":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 16ms","method":"GET","requestID":"51e58121457da54c852eb1b83b4485de","responseTime":16,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805471,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739723,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0","level":"info","message":"auth send jwt","requestID":"07af2cc81095e90e76dd4aa0368a5461"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07af2cc81095e90e76dd4aa0368a5461","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07af2cc81095e90e76dd4aa0368a5461"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.392059956Z"}]},"request_id":"87d3d8d2-e265-4435-9056-663c61988ef6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.788124} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"00529532-2f35-4bc4-8bc5-4685a9ba3b6a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.7894766} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772461,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"07af2cc81095e90e76dd4aa0368a5461","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"07af2cc81095e90e76dd4aa0368a5461","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/55e27d8c-ad54-4802-a171-a48def9daee0? 200 15ms","method":"GET","requestID":"7566ac30-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 17ms","method":"GET","requestID":"7566d340-86cf-11ef-b00e-2fb111b9dda5","responseTime":17,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Building connection plan","requestID":"c6f4206df224fcdbcff95a72db112506"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:23.442377064Z"}]},"request_id":"90486a0e-efbf-4386-85b0-d4a54165b3d5","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.798312} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"61f3a21c-f3a4-4ae3-8eea-7ccabb8984d6"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"ebcd0b89-b475-4714-b155-120b789bdb0a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f4bc0f5b-403d-46f2-84bc-41cbf483e1c9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c6f4206df224fcdbcff95a72db112506"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c6f4206df224fcdbcff95a72db112506"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07af2cc81095e90e76dd4aa0368a5461","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07af2cc81095e90e76dd4aa0368a5461"} device-1 | {"level":"info","message":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? 200 15ms","method":"GET","requestID":"07af2cc81095e90e76dd4aa0368a5461","responseTime":15,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55a9451f-a255-4600-95be-6f78efbbd866? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07af2cc81095e90e76dd4aa0368a5461"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":2.242983,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541105,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNX0.007YLvyogzSElKN8SXMrzyM7TKo4CTkFSGCOa56uhS0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"6c3e65b4-616b-4c37-a1f4-9bc596ba9bc4","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.8145134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb0d3830-d607-4c88-9832-d6d0abd85946","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.8149543} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa'","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa'","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} 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":"756a0790-86cf-11ef-b00e-2fb111b9dda5","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":"756a0790-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c6f4206df224fcdbcff95a72db112506"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75721de0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46f95278-c02b-4a10-8444-7c2b4de60271","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.8592222} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422859,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75721de0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75721de0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75721de0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling 200 9ms","method":"POST","requestID":"75721de0-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling"} device-1 | {"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7573f2a0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab840279-517f-4642-9275-ec44a5edef7a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.870807} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.080754,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7573f2a0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7573f2a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7573f2a0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling 200 8ms","method":"POST","requestID":"7573f2a0-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling"} device-1 | {"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2154736450847968540 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:qPQD\r\na=ice-pwd:KsT0s79bP2T3/3KpA95vSBHX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 21:BE:8C:16:A6:BB:BE:EF:ED:53:6C:9A:8F:73:F2:EB:A0:81:2D:C3:30:9F:14:EC:D3:14:DE:34:27:56:AF:F0\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5133151611347553592 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:jAIc\r\na=ice-pwd:1UhVe9bGOJcdl0lS29Y9AQGY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:FC:4C:0D:B4:82:11:E7:D3:9D:03:DF:A0:11:9B:65:58:55:CD:FF:E7:91:EB:20:31:DC:36:18:10:0E:36:36\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3974205807 1 udp 2113937151 eab2ab06-9908-49bf-bbe0-b63f6df8929b.local 33756 typ host generation 0 ufrag jAIc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2143957116 1 udp 1677729535 141.24.211.56 33756 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jAIc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"55e27d8c-ad54-4802-a171-a48def9daee0","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/55e27d8c-ad54-4802-a171-a48def9daee0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0'"} device-1 | {"content":{"candidate":"candidate:3270221873 1 udp 2113937151 04b376ff-dc1f-498b-b558-b8a3d47bafc8.local 42977 typ host generation 0 ufrag qPQD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1187433038 1 udp 1677729535 141.24.211.56 42977 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag qPQD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"55a9451f-a255-4600-95be-6f78efbbd866","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/55a9451f-a255-4600-95be-6f78efbbd866'"} device-1 | {"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"55e27d8c-ad54-4802-a171-a48def9daee0","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/0f40068a-163b-4487-b6e4-c00ab2991baa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0f40068a-163b-4487-b6e4-c00ab2991baa","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c31d8895a54b12cf36c64ffb5ca6c11e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c31d8895a54b12cf36c64ffb5ca6c11e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"55a9451f-a255-4600-95be-6f78efbbd866","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"}}},"level":"info","message":"received a callback","requestID":"c31d8895a54b12cf36c64ffb5ca6c11e"} device-1 | {"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"55e27d8c-ad54-4802-a171-a48def9daee0","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":"c31d8895a54b12cf36c64ffb5ca6c11e","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"c31d8895a54b12cf36c64ffb5ca6c11e"} device-1 | {"device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"0f40068a-163b-4487-b6e4-c00ab2991baa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0f40068a-163b-4487-b6e4-c00ab2991baa","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/0f40068a-163b-4487-b6e4-c00ab2991baa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0f40068a-163b-4487-b6e4-c00ab2991baa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c6a37b2b5b8165c04add44fa1fd4393","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5c6a37b2b5b8165c04add44fa1fd4393","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"}}},"level":"info","message":"received a callback","requestID":"5c6a37b2b5b8165c04add44fa1fd4393"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"758075c0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0f40068a-163b-4487-b6e4-c00ab2991baa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"785ec7fa-9050-41fb-b542-5c2a69264bf2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.9523811} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.0363,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"758075c0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","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":"758075c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"758075c0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa 200 7ms","method":"GET","requestID":"758075c0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"5c6a37b2b5b8165c04add44fa1fd4393","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"5c6a37b2b5b8165c04add44fa1fd4393"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7584bb80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"250ddc2e-59b3-4afc-853f-27e1d04579c1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.9806902} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.384798,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7584bb80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7584bb80-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7584bb80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling 200 8ms","method":"POST","requestID":"7584bb80-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75861b10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19548a61-5a26-4802-9c25-dfe6ecbd26ef","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541105.989464} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.097225,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75861b10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75861b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75861b10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling 200 8ms","method":"POST","requestID":"75861b10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA","level":"info","message":"auth send jwt","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.678254,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541106,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7"} experiment-1 | {"level":"info","message":"GET /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0 200 10ms","method":"GET","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7","responseTime":10,"status":200,"url":"/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c794c9bc7f3477dc8d0e2a4b95aad1b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA","level":"info","message":"auth send jwt","requestID":"b391c9024f34a652e5ea26c1d95aed96"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b391c9024f34a652e5ea26c1d95aed96","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","requestID":"b391c9024f34a652e5ea26c1d95aed96"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.648653,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"b391c9024f34a652e5ea26c1d95aed96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541106,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b391c9024f34a652e5ea26c1d95aed96","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Attempting to finish experiment","requestID":"b391c9024f34a652e5ea26c1d95aed96"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"758fdf10-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.853134,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"758fdf10-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541106,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"758fdf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","device":"55e27d8c-ad54-4802-a171-a48def9daee0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa","device":"55a9451f-a255-4600-95be-6f78efbbd866","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/0f40068a-163b-4487-b6e4-c00ab2991baa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0f40068a-163b-4487-b6e4-c00ab2991baa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0f40068a-163b-4487-b6e4-c00ab2991baa': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0f40068a-163b-4487-b6e4-c00ab2991baa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"86e91e43-5610-44c0-b46c-d50b42ecfea7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.0685039} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"476a5225fa11c2204d604ba775ece350","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"476a5225fa11c2204d604ba775ece350","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02c08e5a-d25e-4811-ad6d-bf48cdeab4d2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.0696921} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e5bd9307fb956cc3b6f9c5230cd920f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"758fdf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e5bd9307fb956cc3b6f9c5230cd920f3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"}}},"level":"info","message":"received a callback","requestID":"476a5225fa11c2204d604ba775ece350"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"}}},"level":"info","message":"received a callback","requestID":"e5bd9307fb956cc3b6f9c5230cd920f3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"758fdf10-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa 204 30ms","method":"DELETE","requestID":"758fdf10-86cf-11ef-b00e-2fb111b9dda5","responseTime":30,"status":204,"url":"/peerconnections/0f40068a-163b-4487-b6e4-c00ab2991baa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"},"level":"info","message":"Successfully finished experiment","requestID":"b391c9024f34a652e5ea26c1d95aed96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75973210-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55e27d8c-ad54-4802-a171-a48def9daee0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b8a3153-f091-4ea8-afcd-7ff6b868b025","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.1025662} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.608326,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"75973210-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55e27d8c-ad54-4802-a171-a48def9daee0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75973210-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75973210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling 200 9ms","method":"POST","requestID":"75973210-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/55e27d8c-ad54-4802-a171-a48def9daee0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7598dfc0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd7c71ce-069c-4050-b1ce-dce7471679d0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd7c71ce-069c-4050-b1ce-dce7471679d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"bd14ae3f-1158-4edd-bbb5-7baf0a0543da","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.1116836} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d81f5e7-bdc9-4420-b839-f2919d6b4f36","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.1118438} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"b391c9024f34a652e5ea26c1d95aed96","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55a9451f-a255-4600-95be-6f78efbbd866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e473adb3-27e4-4c6d-a7a9-ded0419bad89","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.1151526} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.277245,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7598dfc0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7598dfc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7598dfc0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling 200 11ms","method":"POST","requestID":"7598dfc0-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":200,"url":"/devices/55a9451f-a255-4600-95be-6f78efbbd866/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0","requestID":"b391c9024f34a652e5ea26c1d95aed96"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b391c9024f34a652e5ea26c1d95aed96"} experiment-1 | {"level":"info","message":"DELETE /experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0 204 126ms","method":"DELETE","requestID":"b391c9024f34a652e5ea26c1d95aed96","responseTime":126,"status":204,"url":"/experiments/cd7c71ce-069c-4050-b1ce-dce7471679d0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 99ms","method":"POST","requestID":"476a5225fa11c2204d604ba775ece350","responseTime":99,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.102","http_referrer":"","http_user_agent":"node-fetch","requestID":"476a5225fa11c2204d604ba775ece350"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 98ms","method":"POST","requestID":"e5bd9307fb956cc3b6f9c5230cd920f3","responseTime":98,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.102","http_referrer":"","http_user_agent":"node-fetch","requestID":"e5bd9307fb956cc3b6f9c5230cd920f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA","level":"info","message":"auth send jwt","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.704","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f12c7a47b8e6a6db777b4652b0173809"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.924861,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541106,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.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":"837d57709ea2d2219b1b33272acbf4c2"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/55a9451f-a255-4600-95be-6f78efbbd866' 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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d69e7fee-3788-4e41-970a-c44b510ff385","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.1966395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5dc1459b-60dd-4d0d-aa13-ee2326b68c63","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.201361} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","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/55e27d8c-ad54-4802-a171-a48def9daee0' closed"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"c029f260-b517-4e4c-bfde-5c5b62806a3d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2118778} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"964c4839-2b56-4dbd-9d56-0ae69a1d316f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.211987} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.211837186Z"}]},"request_id":"252a4a9e-2437-4d03-a03a-ad4483dd8a2b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2152548} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"741bcbb311099a2a1c5bfc1a4d0f0035"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA","level":"info","message":"auth send jwt","requestID":"bdbc51b68abaa66902a1642a7cdd645f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bdbc51b68abaa66902a1642a7cdd645f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bdbc51b68abaa66902a1642a7cdd645f"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.653928,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"bdbc51b68abaa66902a1642a7cdd645f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541106,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwNn0.XrMH9mSQ7bNtVYuOvIqPFHfcfdxq0AuLXCslM4Xp2cA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"edfdc9d9-17a1-4122-928c-b2cacf8b7e35","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2381258} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31a3e8fc-348c-4c9d-a806-236a7f02b87a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2415283} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"d0444eb7-3a4b-4540-b766-b754875d3698","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2519438} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e3db29e8-51c0-4c15-bff9-1867926891f7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2520578} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"5e832ed1-1f7f-4fff-b37f-7d54c80aa1c8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541106.2554255} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bdbc51b68abaa66902a1642a7cdd645f"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"bdbc51b68abaa66902a1642a7cdd645f","responseTime":35,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdbc51b68abaa66902a1642a7cdd645f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f3b598fe20788293f25cfc036ba0f6cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3b598fe20788293f25cfc036ba0f6cd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/de961894-26e4-43fc-bd8f-7703faac931d/websocket 200 1ms","method":"OPTIONS","requestID":"f3b598fe20788293f25cfc036ba0f6cd","responseTime":1,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/de961894-26e4-43fc-bd8f-7703faac931d/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":"f3b598fe20788293f25cfc036ba0f6cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k","level":"info","message":"auth send jwt","requestID":"6665be8e87d388727e9774d303742135"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6665be8e87d388727e9774d303742135","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6665be8e87d388727e9774d303742135"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.334784,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"6665be8e87d388727e9774d303742135","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6665be8e87d388727e9774d303742135","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6665be8e87d388727e9774d303742135"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/websocket 200 22ms","method":"POST","requestID":"6665be8e87d388727e9774d303742135","responseTime":22,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/websocket"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/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":"6665be8e87d388727e9774d303742135"} device-1 | {"level":"info","message":"device 'http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f652c4005ba5199bfc7e7d924265ae2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f652c4005ba5199bfc7e7d924265ae2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/de961894-26e4-43fc-bd8f-7703faac931d? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9f652c4005ba5199bfc7e7d924265ae2"} device-1 | {"level":"info","message":"OPTIONS /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 1ms","method":"OPTIONS","requestID":"9f652c4005ba5199bfc7e7d924265ae2","responseTime":1,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k","level":"info","message":"auth send jwt","requestID":"3e5446fbee5be2eda482e5014a4d931d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e5446fbee5be2eda482e5014a4d931d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3e5446fbee5be2eda482e5014a4d931d"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.372201,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"3e5446fbee5be2eda482e5014a4d931d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e5446fbee5be2eda482e5014a4d931d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"25345066-1b06-4248-a7f9-06c3ada5e8fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.3770897} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e5446fbee5be2eda482e5014a4d931d","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddb38800-3d2c-4fde-baaa-cf3fab34a3fd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.384605} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3e5446fbee5be2eda482e5014a4d931d","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"aba3aada-c7a1-44b9-8cfc-f708c200e517","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.3972611} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e5446fbee5be2eda482e5014a4d931d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3e5446fbee5be2eda482e5014a4d931d"} device-1 | {"level":"info","message":"PATCH /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 37ms","method":"PATCH","requestID":"3e5446fbee5be2eda482e5014a4d931d","responseTime":37,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/de961894-26e4-43fc-bd8f-7703faac931d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e5446fbee5be2eda482e5014a4d931d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k","level":"info","message":"auth send jwt","requestID":"710104e5c2ab02e91fc226c209bc22b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"710104e5c2ab02e91fc226c209bc22b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"710104e5c2ab02e91fc226c209bc22b7"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198758,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"710104e5c2ab02e91fc226c209bc22b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"710104e5c2ab02e91fc226c209bc22b7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"f267818a-2362-4001-b2f0-92b43e279822","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.4245565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"710104e5c2ab02e91fc226c209bc22b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"710104e5c2ab02e91fc226c209bc22b7"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"710104e5c2ab02e91fc226c209bc22b7"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 17ms","method":"GET","requestID":"710104e5c2ab02e91fc226c209bc22b7","responseTime":17,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k","level":"info","message":"auth send jwt","requestID":"201e8928b9d1d5059de58438234a0555"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"201e8928b9d1d5059de58438234a0555","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"201e8928b9d1d5059de58438234a0555"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.162788,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"201e8928b9d1d5059de58438234a0555","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"201e8928b9d1d5059de58438234a0555","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to run experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to book experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully booked experiment","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32348,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a98984f-0716-47ca-9d3a-720df2942a7a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0a98984f-0716-47ca-9d3a-720df2942a7a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203388,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a98984f-0716-47ca-9d3a-720df2942a7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.211837186Z"}]},"request_id":"ffea3bf9-45c7-4b9c-a413-a5154594d426","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.4917912} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"bcf5a284-913d-48a2-962f-ff9ffe632984","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.4938045} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/0a98984f-0716-47ca-9d3a-720df2942a7a? 200 19ms","method":"GET","requestID":"7702d000-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/0a98984f-0716-47ca-9d3a-720df2942a7a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 19ms","method":"GET","requestID":"7702f710-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Setting up experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304756,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a98984f-0716-47ca-9d3a-720df2942a7a","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/0a98984f-0716-47ca-9d3a-720df2942a7a","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"35df3844-7473-4f74-b9ba-89ccbfe3c61e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.5520322} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c91682cd-3591-4d47-8248-42ffc6a0a9a2","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.5522323} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' to 'http://localhost/callbacks/experiment'","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5"} authentication-1 | {"level":"info","message":"POST /token 201 27ms","method":"POST","requestID":"770f2c10-86cf-11ef-80c7-599f6d5f520a","responseTime":27,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/0a98984f-0716-47ca-9d3a-720df2942a7a?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 76ms","method":"POST","requestID":"7708c370-86cf-11ef-b00e-2fb111b9dda5","responseTime":76,"status":201,"url":"/devices/0a98984f-0716-47ca-9d3a-720df2942a7a?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully set up experiment","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"771c9990-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully running experiment","requestID":"201e8928b9d1d5059de58438234a0555"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.634825,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43910","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814538,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43920","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.399051,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf14aedf-c060-4ff6-9355-6521777ca00e","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6576135} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"771c9990-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","rebac_allow":false,"scope_allow":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":"771c9990-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"3c185bd1-ec87-43dc-8d2d-4740decaa38b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6628954} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"81ebd4fb-5562-4f3d-9f84-22c42ba94508","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6668277} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device aa6bbea6-f3b0-425e-a719-219bcb1dec43","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device aa6bbea6-f3b0-425e-a719-219bcb1dec43\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/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"771c9990-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling 404 19ms","method":"POST","requestID":"771c9990-86cf-11ef-b00e-2fb111b9dda5","responseTime":19,"status":404,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device aa6bbea6-f3b0-425e-a719-219bcb1dec43"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"201e8928b9d1d5059de58438234a0555"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7e6f737a-e57f-4b9c-bb4d-b97ece18771e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7e6f737a-e57f-4b9c-bb4d-b97ece18771e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"3a7ff7e0-41fc-4b5a-a1cd-1e3d36435201","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6712625} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c9e5af6-65bc-4018-a64c-5919cdea7a5f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6718981} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"201e8928b9d1d5059de58438234a0555","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77206a20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 32ms","method":"GET","requestID":"771bfd50-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 32ms","method":"GET","requestID":"771c4b70-86cf-11ef-b00e-2fb111b9dda5","responseTime":32,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13e51da3-3858-4237-b37b-4182a5bb5801","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541108.6802897} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.442804,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"77206a20-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","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/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","user":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"201e8928b9d1d5059de58438234a0555"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"77206a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 246ms","method":"POST","requestID":"201e8928b9d1d5059de58438234a0555","responseTime":246,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.253","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77206a20-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling 200 14ms","method":"POST","requestID":"77206a20-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2081355c9aec2d86d1cd181b491a4172","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2081355c9aec2d86d1cd181b491a4172","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/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":"2081355c9aec2d86d1cd181b491a4172"} device-1 | {"level":"info","message":"OPTIONS /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/websocket 200 1ms","method":"OPTIONS","requestID":"2081355c9aec2d86d1cd181b491a4172","responseTime":1,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6IlNLMVVyckF4WTN5cjNvSUgwNUhZOFJTTU1NbEhSeWlFellxVlQ4RnpRR3lLYzF3X0hsZG9rbWg1OEpZYkFuLWg3NFQ2blE4TUMxc2NxTHp6UlhVRGZ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.xdikAytTiNaFIPCkl8snAP4gyrdUJeGSIiKWETVXHLg","level":"info","message":"auth send jwt","requestID":"c284892b7c4ccaca50c045bed3329502"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c284892b7c4ccaca50c045bed3329502","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c284892b7c4ccaca50c045bed3329502"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.420992,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c284892b7c4ccaca50c045bed3329502","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"SK1UrrAxY3yr3oIH05HY8RSMMMlHRyiEzYqVT8FzQGyKc1w_Hldokmh58JYbAn-h74T6nQ8MC1scqLzzRXUDfw","iat":1728541110,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6IlNLMVVyckF4WTN5cjNvSUgwNUhZOFJTTU1NbEhSeWlFellxVlQ4RnpRR3lLYzF3X0hsZG9rbWg1OEpZYkFuLWg3NFQ2blE4TUMxc2NxTHp6UlhVRGZ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.xdikAytTiNaFIPCkl8snAP4gyrdUJeGSIiKWETVXHLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c284892b7c4ccaca50c045bed3329502","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c284892b7c4ccaca50c045bed3329502"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/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":"c284892b7c4ccaca50c045bed3329502"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/websocket 200 22ms","method":"POST","requestID":"c284892b7c4ccaca50c045bed3329502","responseTime":22,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/websocket"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8563fb994bd4c531a69e1b2d4870fba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c8563fb994bd4c531a69e1b2d4870fba","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"c8563fb994bd4c531a69e1b2d4870fba"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ea827986b7e3c57f2df1fafae0955bf2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ea827986b7e3c57f2df1fafae0955bf2","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 1ms","method":"OPTIONS","requestID":"ea827986b7e3c57f2df1fafae0955bf2","responseTime":1,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ea827986b7e3c57f2df1fafae0955bf2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 22ms","method":"POST","requestID":"c8563fb994bd4c531a69e1b2d4870fba","responseTime":22,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"c8563fb994bd4c531a69e1b2d4870fba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6IlNLMVVyckF4WTN5cjNvSUgwNUhZOFJTTU1NbEhSeWlFellxVlQ4RnpRR3lLYzF3X0hsZG9rbWg1OEpZYkFuLWg3NFQ2blE4TUMxc2NxTHp6UlhVRGZ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.xdikAytTiNaFIPCkl8snAP4gyrdUJeGSIiKWETVXHLg","level":"info","message":"auth send jwt","requestID":"c196d94516071e07f8b89d9012ae34ea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c196d94516071e07f8b89d9012ae34ea","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c196d94516071e07f8b89d9012ae34ea"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.521357,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"c196d94516071e07f8b89d9012ae34ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"SK1UrrAxY3yr3oIH05HY8RSMMMlHRyiEzYqVT8FzQGyKc1w_Hldokmh58JYbAn-h74T6nQ8MC1scqLzzRXUDfw","iat":1728541110,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6IlNLMVVyckF4WTN5cjNvSUgwNUhZOFJTTU1NbEhSeWlFellxVlQ4RnpRR3lLYzF3X0hsZG9rbWg1OEpZYkFuLWg3NFQ2blE4TUMxc2NxTHp6UlhVRGZ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.xdikAytTiNaFIPCkl8snAP4gyrdUJeGSIiKWETVXHLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c196d94516071e07f8b89d9012ae34ea","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"3dbbe97a-5a27-42cf-8be1-e311de9cb457","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541110.8157842} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c196d94516071e07f8b89d9012ae34ea","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:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb24b08f-8edb-42a1-b602-5e74786e1dae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541110.8232665} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c196d94516071e07f8b89d9012ae34ea","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"b3b647c7-65be-4e38-b79a-e9833a1d8022","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541110.8362753} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c196d94516071e07f8b89d9012ae34ea","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' to 'http://localhost/callbacks/experiment'","requestID":"c196d94516071e07f8b89d9012ae34ea"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c196d94516071e07f8b89d9012ae34ea"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c196d94516071e07f8b89d9012ae34ea"} device-1 | {"level":"info","message":"PATCH /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 40ms","method":"PATCH","requestID":"c196d94516071e07f8b89d9012ae34ea","responseTime":40,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"613388c9641c774987d2c09453d5a344","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"613388c9641c774987d2c09453d5a344","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]}],"type":"device","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"613388c9641c774987d2c09453d5a344"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"613388c9641c774987d2c09453d5a344","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"613388c9641c774987d2c09453d5a344"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.f-H0lhchGXzeX_kgyduK8xiqPcQgAHOIv3AdsQUFPxM","level":"info","message":"auth send jwt","requestID":"16b4af4c60998b9e38ae4819150fc1e3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"16b4af4c60998b9e38ae4819150fc1e3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16b4af4c60998b9e38ae4819150fc1e3"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236705,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"16b4af4c60998b9e38ae4819150fc1e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541110,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.f-H0lhchGXzeX_kgyduK8xiqPcQgAHOIv3AdsQUFPxM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"16b4af4c60998b9e38ae4819150fc1e3","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"31709f2e-78f3-4192-af99-7d874f9db7e8","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541110.870218} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"16b4af4c60998b9e38ae4819150fc1e3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16b4af4c60998b9e38ae4819150fc1e3"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16b4af4c60998b9e38ae4819150fc1e3"} device-1 | {"level":"info","message":"GET /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 17ms","method":"GET","requestID":"16b4af4c60998b9e38ae4819150fc1e3","responseTime":17,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.f-H0lhchGXzeX_kgyduK8xiqPcQgAHOIv3AdsQUFPxM","level":"info","message":"auth send jwt","requestID":"a7e30cede3645a6cba89c43e3e3f0b86"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a7e30cede3645a6cba89c43e3e3f0b86","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a7e30cede3645a6cba89c43e3e3f0b86"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.413658,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"a7e30cede3645a6cba89c43e3e3f0b86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541110,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExMH0.f-H0lhchGXzeX_kgyduK8xiqPcQgAHOIv3AdsQUFPxM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a7e30cede3645a6cba89c43e3e3f0b86","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"21712fe5-315a-40e3-89f9-b98416533c28","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541110.8942523} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a7e30cede3645a6cba89c43e3e3f0b86","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a7e30cede3645a6cba89c43e3e3f0b86"} gateway-1 | {"time_local":"10/Oct/2024:06:18:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7e30cede3645a6cba89c43e3e3f0b86"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 16ms","method":"GET","requestID":"a7e30cede3645a6cba89c43e3e3f0b86","responseTime":16,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249286,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35616","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:35616","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.092639,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"b60fbe32-68bb-4996-b040-1e225fde6b7d","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.7014122} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 23ms","method":"GET","requestID":"7a1d2f60-86cf-11ef-b00e-2fb111b9dda5","responseTime":23,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"8dde87e9-88b2-492e-babe-cedd94e18c56","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.7072403} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 28ms","method":"GET","requestID":"7a1d7d80-86cf-11ef-b00e-2fb111b9dda5","responseTime":28,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a221160-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fea24c92-0f99-4f60-b096-d6fdca2f08df","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.7257702} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.433902,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a221160-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","rebac_allow":false,"scope_allow":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":"7a221160-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a221160-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling 200 14ms","method":"POST","requestID":"7a221160-86cf-11ef-b00e-2fb111b9dda5","responseTime":14,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a24a970-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cf6f2d5-b2ca-4def-b8ad-04d064fcc115","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.7431746} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.830016,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a24a970-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","rebac_allow":false,"scope_allow":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":"7a24a970-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a24a970-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling 200 15ms","method":"POST","requestID":"7a24a970-86cf-11ef-b00e-2fb111b9dda5","responseTime":15,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.120092,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:35616","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35616","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.133246,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:28.551982525Z"}]},"request_id":"619c3fb4-5038-480b-b800-aa09a54e2d3a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.7664618} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5","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:39480","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"timestamp":"2024-10-10T06:18:26.251912865Z"}]},"request_id":"833ff5d4-fd50-4eb3-bf29-992034a7b7ad","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.768064} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43? 200 22ms","method":"GET","requestID":"7a276890-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /devices/de961894-26e4-43fc-bd8f-7703faac931d? 200 22ms","method":"GET","requestID":"7a27b6b0-86cf-11ef-b00e-2fb111b9dda5","responseTime":22,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Building connection plan","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"5b7fd5cd-067f-4bad-8492-beeb107df309"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"bce80546-9e1e-4d83-ae95-a44f56d7403f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b0d9a7e6-36cd-4fce-bbae-651b465b1db1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"201e8928b9d1d5059de58438234a0555"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.211495,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541108,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTEwOH0.X69VkUu2ZH1w6txRvBAnS4QlerRE_BDi7nugJWltr6k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","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%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]}},"raw_response":{},"request_id":"8dda3c98-3d28-4950-8698-7352e7db8da0","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.798803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a0a3856-e87a-4836-a5d8-b8412364587a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.799363} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75'","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75'","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} 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":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5","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":"7a2b8740-86cf-11ef-b00e-2fb111b9dda5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"201e8928b9d1d5059de58438234a0555"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a360e90-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f26c4cb2-bd09-4db8-840c-082deff60ff6","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.854308} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.879749,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a360e90-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a360e90-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a360e90-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling 200 8ms","method":"POST","requestID":"7a360e90-86cf-11ef-b00e-2fb111b9dda5","responseTime":9,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a379530-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b827423-92b8-4152-9ead-c2248b191cd1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.8664873} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.867276,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} device-1 | {"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"de961894-26e4-43fc-bd8f-7703faac931d","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/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a379530-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","rebac_allow":false,"scope_allow":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":"7a379530-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a379530-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling 200 13ms","method":"POST","requestID":"7a379530-86cf-11ef-b00e-2fb111b9dda5","responseTime":13,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8508848984587955319 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:c6l2\r\na=ice-pwd:ujbi+Gf24LN9Zuxl2ztz9/Z4\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0D:D5:D1:5F:B9:FA:71:E6:92:DB:4E:72:AA:43:90:7B:03:D7:0F:F0:17:52:A0:0B:67:15:B4:EE:3F:C0:AF:AF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6822710365419977392 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+kz\r\na=ice-pwd:qOneBUTVYQ5VQVQ89rBQCgwE\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8D:49:0A:93:23:EE:ED:B1:D8:25:98:68:58:91:76:D8:9C:07:51:DA:10:E5:39:D4:51:34:EC:4A:6D:A9:BD:69\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2405167825 1 udp 2113937151 09f46f27-a85a-4153-ada6-b2acf0ea3bae.local 57021 typ host generation 0 ufrag h+kz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:192321710 1 udp 1677729535 141.24.211.56 57021 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag h+kz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"de961894-26e4-43fc-bd8f-7703faac931d","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/de961894-26e4-43fc-bd8f-7703faac931d'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d'"} device-1 | {"content":{"candidate":"candidate:3013248123 1 udp 2113937151 aa3ca901-9ef1-4338-8a1b-6e48fd556e2d.local 46380 typ host generation 0 ufrag c6l2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:934800900 1 udp 1677729535 141.24.211.56 46380 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag c6l2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","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/aa6bbea6-f3b0-425e-a719-219bcb1dec43'"} device-1 | {"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"de961894-26e4-43fc-bd8f-7703faac931d","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/3554d939-2038-4d3d-95bf-f6f066fa2d75' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3554d939-2038-4d3d-95bf-f6f066fa2d75","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2ca244810a5349cebc70adadfbdf60b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b2ca244810a5349cebc70adadfbdf60b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"}}},"level":"info","message":"received a callback","requestID":"b2ca244810a5349cebc70adadfbdf60b"} device-1 | {"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","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":"b2ca244810a5349cebc70adadfbdf60b","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"b2ca244810a5349cebc70adadfbdf60b"} device-1 | {"device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"3554d939-2038-4d3d-95bf-f6f066fa2d75","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3554d939-2038-4d3d-95bf-f6f066fa2d75","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/3554d939-2038-4d3d-95bf-f6f066fa2d75' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3554d939-2038-4d3d-95bf-f6f066fa2d75","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66426ebf8df548dbf19571bc1df415fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"66426ebf8df548dbf19571bc1df415fd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"}}},"level":"info","message":"received a callback","requestID":"66426ebf8df548dbf19571bc1df415fd"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7a4306e0-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3554d939-2038-4d3d-95bf-f6f066fa2d75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f263b400-e730-4ec3-8299-3a6a3b9fb5ae","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.9387026} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.116711,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a4306e0-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","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":"7a4306e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7a4306e0-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"GET /peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75 200 7ms","method":"GET","requestID":"7a4306e0-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"66426ebf8df548dbf19571bc1df415fd","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"66426ebf8df548dbf19571bc1df415fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a472590-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ae969d5-aa59-463b-800d-cb04d31a9df7","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.9660747} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.589224,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a472590-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a472590-86cf-11ef-b00e-2fb111b9dda5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a472590-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling 200 8ms","method":"POST","requestID":"7a472590-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a48ac30-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c07037cb-3cc7-4c85-adb6-af2f7cfcfdfd","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541113.9751868} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.059692,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a48ac30-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a48ac30-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a48ac30-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling 200 7ms","method":"POST","requestID":"7a48ac30-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"status":200,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM","level":"info","message":"auth send jwt","requestID":"9269d7bb3cec3f76b0d401c42b3e525a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9269d7bb3cec3f76b0d401c42b3e525a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","requestID":"9269d7bb3cec3f76b0d401c42b3e525a"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.023199,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"9269d7bb3cec3f76b0d401c42b3e525a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541114,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9269d7bb3cec3f76b0d401c42b3e525a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","requestID":"9269d7bb3cec3f76b0d401c42b3e525a"} experiment-1 | {"level":"info","message":"GET /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e 200 9ms","method":"GET","requestID":"9269d7bb3cec3f76b0d401c42b3e525a","responseTime":9,"status":200,"url":"/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9269d7bb3cec3f76b0d401c42b3e525a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM","level":"info","message":"auth send jwt","requestID":"718d0dccf0762865ccd3db4d71b98633"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"718d0dccf0762865ccd3db4d71b98633","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","requestID":"718d0dccf0762865ccd3db4d71b98633"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.750103,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"718d0dccf0762865ccd3db4d71b98633","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"experiment:http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","object_type":"experiment","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541114,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"718d0dccf0762865ccd3db4d71b98633","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Attempting to finish experiment","requestID":"718d0dccf0762865ccd3db4d71b98633"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7a522210-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.14512,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a522210-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"peerconnection:http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541114,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a522210-86cf-11ef-b00e-2fb111b9dda5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","device":"de961894-26e4-43fc-bd8f-7703faac931d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75","device":"aa6bbea6-f3b0-425e-a719-219bcb1dec43","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/3554d939-2038-4d3d-95bf-f6f066fa2d75' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3554d939-2038-4d3d-95bf-f6f066fa2d75","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3554d939-2038-4d3d-95bf-f6f066fa2d75': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3554d939-2038-4d3d-95bf-f6f066fa2d75","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"c6842e71-1a81-444a-865d-51ff1101450a","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.0486035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38e9f148-527f-4297-8ac5-486af0681fcf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.0488157} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"24ea9227bde388c8963d02203e36156b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7a522210-86cf-11ef-b00e-2fb111b9dda5","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"24ea9227bde388c8963d02203e36156b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"}}},"level":"info","message":"received a callback","requestID":"24ea9227bde388c8963d02203e36156b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c01d928c75c76cbb0db3fde2ecb7dc3a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c01d928c75c76cbb0db3fde2ecb7dc3a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"}}},"level":"info","message":"received a callback","requestID":"c01d928c75c76cbb0db3fde2ecb7dc3a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7a522210-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75 204 33ms","method":"DELETE","requestID":"7a522210-86cf-11ef-b00e-2fb111b9dda5","responseTime":33,"status":204,"url":"/peerconnections/3554d939-2038-4d3d-95bf-f6f066fa2d75"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43'"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624228,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","payload":{"admin":true,"edgeToken":"O2mVDyZU_pPwgH6I_2JRj64vtzz2OEPVb2BeOX0Heaa9jj207H2wQeTL_ZG5y9aFcynWv8bsSv-vSen7_92kLQ","iat":1728541114,"sub":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa","subject_alt":"http://localhost/users/d81c4686-f9ae-4a77-a6e3-c523101d6cfa"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q4MWM0Njg2LWY5YWUtNGE3Ny1hNmUzLWM1MjMxMDFkNmNmYSIsImVkZ2VUb2tlbiI6Ik8ybVZEeVpVX3BQd2dINklfMkpSajY0dnR6ejJPRVBWYjJCZU9YMEhlYWE5amoyMDdIMndRZVRMX1pHNXk5YUZjeW5Xdjhic1N2LXZTZW43Xzkya0xRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODU0MTExNH0.s4qpmKxXtCOfoiTRpl2WGSvoqpVakG6TclBhTkFuSDM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"cf675e27-9579-4a5b-b4e2-e6247cd3f415","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.0808055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c5b1968-5498-447b-9ea3-7b89df227bcf","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.0810435} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"DELETE /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43 204 27ms","method":"DELETE","requestID":"7a575230-86cf-11ef-b00e-2fb111b9dda5","responseTime":27,"status":204,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"},"level":"info","message":"Successfully finished experiment","requestID":"718d0dccf0762865ccd3db4d71b98633"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a5ef350-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fde961894-26e4-43fc-bd8f-7703faac931d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d742b9f-7382-47b2-a451-2226c883996b","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.1222365} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.027537,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a5ef350-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7a5ef350-86cf-11ef-b00e-2fb111b9dda5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a5ef350-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling 200 12ms","method":"POST","requestID":"7a5ef350-86cf-11ef-b00e-2fb111b9dda5","responseTime":12,"status":200,"url":"/devices/de961894-26e4-43fc-bd8f-7703faac931d/signaling"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7e6f737a-e57f-4b9c-bb4d-b97ece18771e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7e6f737a-e57f-4b9c-bb4d-b97ece18771e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd81c4686-f9ae-4a77-a6e3-c523101d6cfa"}]},"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","writes":null},"raw_response":{},"request_id":"7b74806d-4426-4121-ba73-ead7a2519c31","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.130667} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1"},"raw_response":{"authorization_model":{"id":"01J9TH2NJKWMN3QRN6GSXKPKPF","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2916cf2a-d4ef-414d-8fad-2ecc6d52db7f","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.1307256} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a613d40-86cf-11ef-b00e-2fb111b9dda5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"718d0dccf0762865ccd3db4d71b98633","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:39480","raw_request":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","contextual_tuples":null,"store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa6bbea6-f3b0-425e-a719-219bcb1dec43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c09c754c-e310-403a-9a21-c579014162a1","store_id":"01J9TH2NH26FCZZ2N8JQXET3M1","subsystem":"openfga","timestamp":1728541114.1386442} authorization-1 | {"client_addr":"127.0.0.1:58336","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.777083,"resp_status":200,"subsystem":"opa","time":"2024-10-10T06:18:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","openfga":{"authorization_model_id":"01J9TH2NJKWMN3QRN6GSXKPKPF","store":"01J9TH2NH26FCZZ2N8JQXET3M1"},"requestID":"7a613d40-86cf-11ef-b00e-2fb111b9dda5","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7a613d40-86cf-11ef-b00e-2fb111b9dda5","responseTime":7,"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/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"7a613d40-86cf-11ef-b00e-2fb111b9dda5"} device-1 | {"level":"info","message":"POST /devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/signaling 404 11ms","method":"POST","requestID":"7a613d40-86cf-11ef-b00e-2fb111b9dda5","responseTime":11,"status":404,"url":"/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43/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":"718d0dccf0762865ccd3db4d71b98633"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e","requestID":"718d0dccf0762865ccd3db4d71b98633"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"718d0dccf0762865ccd3db4d71b98633"} experiment-1 | {"level":"info","message":"DELETE /experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e 204 172ms","method":"DELETE","requestID":"718d0dccf0762865ccd3db4d71b98633","responseTime":172,"status":204,"url":"/experiments/7e6f737a-e57f-4b9c-bb4d-b97ece18771e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"24ea9227bde388c8963d02203e36156b","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"24ea9227bde388c8963d02203e36156b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"c01d928c75c76cbb0db3fde2ecb7dc3a","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"c01d928c75c76cbb0db3fde2ecb7dc3a"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"3.449","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"91f5808fb48112cb666d3e2a4cf79f98"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"5.889","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1ab9c0d604fae82fe8945e20f80038f"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/de961894-26e4-43fc-bd8f-7703faac931d' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9de0857f522af12e6e9bf9ed911d9941","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9de0857f522af12e6e9bf9ed911d9941","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":false,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/aa6bbea6-f3b0-425e-a719-219bcb1dec43"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"9de0857f522af12e6e9bf9ed911d9941"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 3ms","method":"POST","requestID":"9de0857f522af12e6e9bf9ed911d9941","responseTime":3,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"10/Oct/2024:06:18:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"9de0857f522af12e6e9bf9ed911d9941"} authorization-1 exited with code 0 federation-1 exited with code 0 device-1 exited with code 0 forwarding-1 exited with code 0 experiment-1 exited with code 0 authentication-1 exited with code 0 gateway-1 exited with code 0